If-Koubou

Kā jūs izveidojat vienu failu "parādās", lai tajā pašā laikā būtu vairākos mapēs?

Kā jūs izveidojat vienu failu "parādās", lai tajā pašā laikā būtu vairākos mapēs? (Kā)

Ja jums ir liels jūsu darbam izveidoto mapju skaits, un visās darbdienās ir jāizmanto viens un tas pats skripta fails, tad kāds ir vienkāršākais veids, kā to paveikt ārpus daudzas kopēšanas un ielīmēšanas? Šodienas SuperUser Q & A ziņai ir dažas noderīgas atbildes un padomi neapmierinātam lasītājam.

Šodienas jautājumu un atbilžu sesija mums priecājas par SuperUser - Stack Exchange dalību, kas ir kopienas vadīta Q & A tīmekļa vietņu grupa.

Ekrānuzņēmums pieklājīgi no csaveanu (Flickr).

Jautājums

SuperUser lasītājs Elliot meklē labāko veidu, kā vienlaicīgi vienā un tajā pašā failā atrasties vairākās mapēs:

Man ir 50 + mapes, no kurām katra satur lielu datu apjomu, kas ir jāapstrādā. Visi šie tiek apstrādāti, izmantojot to pašu precīzu kodu, izmantojot os.path.dirname (os.path.realpath (fails)) lai saņemtu direktoriju, kurā atrodas python skripts, tāpēc lietotājam nav nepieciešama manuāla rediģēšana, viņiem vienkārši ir nepieciešams dubultklikšķis.

Man vajag, lai skripts parādās tā, it kā tas būtu katrā mapē, bet patiesībā ir tikai vienā vietā, lai es to varētu rediģēt vienu reizi, tad, kad tas tiek palaists no jebkuras no šīm atrašanās vietām, mapes ceļš ir pareizs. Alternatīva ir kapteinis rediģēt un pēc tam ielīmēt to vienā mapē pa visām 50 + mapēm katru reizi, kad atjauninu kodu, kas ir ļoti nogurdinošs un kļūdu risks. Uz Linux es varētu to iestatīt ar simbolisku saiti, taču es nevaru saprast, kā to izdarīt ar Windows.

Alternatīvi, veids, kā ielīmēt failu visās mērķa direktorijās vienlaikus, nevis vienam vienam reizē, sasniegtu to pašu mērķi.

Vai ir veids, kā to izdarīt, nevis kopēt un ielīmēt skripta failu vienā mapē vienlaikus?

Atbilde

SuperUser atbalstītājs gronostaj ir atbilde mums:

Jums ir nepieciešams Simboliskā saite vai a Hard Link.

Simboliskās saites (vai Simlinks īsumā) ir diezgan līdzīgi īsceļiem: ir viens faktiskais fails un vairākas atsauces (Simlinks) uz to. Viņiem pat ir šī mazā bultiņa ikonās. Atšķirībā no īsceļiem, Simlinks var būt jebkurš pagarinājums.

Cietie saites saistīt failu cietajā diskā ar atrašanās vietu direktoriju kokā. Katram failam ir vismaz viens Hard Link, citādi tas nevienā direktorijā nepastāvētu. Ja failam ir vairāki faili Cietie saites, oriģinālu nevar nošķirt no citiem, un fails fiziski pastāv tikai vienā atrašanās vietā.

Abiem ir viņu ierobežojumi:

  • Daļa programmatūras nedarbojas labi ar Simlinks.
  • Oriģināla faila dzēšana atstāj visu to Simlinks salauzts
  • Tu nevari Hard Link mapes (bet jūs varat izveidot direktoriju savienojumu, ja a Symlink nav pietiekami).
  • Cross-partition izveidošana Cietie saites nav iespējams.

Simlinks parasti ir pietiekami.

Lai izveidotu simlinku vai cieto saiti:

1. Uzsākt privileģētu komandrindu: nospiediet Windows atslēga, ierakstiet cmd, tad nospiediet Ctrl + Shift + Enter.

2. Izsniegt mklink komandu:

  • mklink link_name link_target par failu Symlink
  • mklink / d link_name link_target par mapi Symlink
  • mklink / h link_name link_target par failu Hard Link
  • mklink / j link_name link_target a Direktorija savienojums

Vai kaut ko pievienot paskaidrojumam? Skatieties komentāros. Vēlaties lasīt citas atbildes no citiem tehnoloģiju savvy Stack Exchange lietotājiem? Šeit skatiet pilnu diskusiju pavedienu.