Kako napraviti jednu datoteku 'pojavljuju' biti u više mapa u isto vrijeme?
Ako imate veliki broj mapa za vaš rad i trebate koristiti istu skriptnu datoteku u svim radnim danima, što je najjednostavniji način da se to postigne izvan puno kopiranja i lijepljenja? Današnja postova za pitanja i odgovore SuperUser imaju neke korisne odgovore i savjete za frustriranog čitatelja.
Današnja sesija pitanja i odgovora dolazi nam ljubaznošću SuperUser-a, podjele Stack Exchangea, grupiranja web-lokacija za pitanja i odgovore u zajednici.
Snimak je dopušten csaveanu (Flickr).
Pitanje
Čitač SuperUser Elliot traži najbolji način za prikazivanje iste datoteke u više mapa u isto vrijeme:
Imam 50+ mapa, od kojih svaka sadrži veliku količinu podataka koje treba obraditi. Svi su obrađeni pomoću istog točnog koda, koji se koristi os.path.dirname (os.path.realpath (Datoteka)) da biste dobili direktorij u kojem se nalazi Python skripta tako da korisnik ne zahtijeva ručno uređivanje, potrebno je samo dvaput kliknuti.
Trebam skriptu da se pojavi kao da je u svakoj mapi dok se zapravo nalazim samo na jednom mjestu, tako da je mogu urediti jednom, a onda kada se pokrene s bilo koje od ovih lokacija, putanja mape je ispravna. Alternativa je uređivanje majstora i zatim lijepljenje jedne mape u isto vrijeme kroz svih 50 + mapa svaki put kad ažuriram kôd, koji je vrlo zamoran i sklon pogreškama. Na Linuxu sam to mogao postaviti sa simboličkom vezom, ali ne mogu smisliti način da to učinim sa sustavom Windows.
Alternativno, način za lijepljenje datoteke u sve ciljne direktorije odjednom, umjesto jednog po jedan, postigao bi isti cilj.
Postoji li način da to učinite umjesto da kopirate i zalijepite datoteku skripte jednu po jednu mapu?
Odgovor
Doprinosnik SuperUser-a gronostaj ima odgovor za nas:
Trebaš Simbolička veza ili a Hard Link.
Simbolički linkovi (ili simboličke veze za kratko) vrlo su slični prečacima: postoji jedna stvarna datoteka i više referenci (simboličke veze) na njega. Čak imaju i tu strelicu na ikonama. Za razliku od prečaca, simboličke veze može imati bilo koje proširenje.
Hard Links povezati datoteku na tvrdom disku s mjestom u stablu direktorija. Svaka datoteka ima barem jednu Hard Link, inače ne bi bilo ni u jednom direktoriju. Ako datoteka ima više Hard Links, izvorni se ne može razlikovati od ostalih i datoteka fizički postoji samo na jednom mjestu.
Oba imaju svoja ograničenja:
- Neki se programi ne igraju dobro simboličke veze.
- Brisanje izvorne datoteke ostavlja sve njezine simboličke veze slomljen.
- Ne možeš Hard Link mape (ali možete stvoriti spajanje direktorija ako Simbolička veza nije dovoljno).
- Stvaranje unakrsne particije Hard Links je nemoguce.
simboličke veze obično su dovoljni.
Stvaranje simboličke veze ili tvrde veze:
1. Pokrenite povlaštenu naredbenu liniju: Pritisnite gumb Windows ključ, tip cmd, zatim pritisnite Ctrl + Shift + Enter.
2. Izdajte naredbu mklink:
- mklink link_name link_target za datoteku Simbolička veza
- mklink / d link_name link_target za mapu Simbolička veza
- mklink / h link_name link_target za datoteku Hard Link
- mklink / j link_name link_target za a Spajanje direktorija
Imate li što dodati objašnjenju? Zvuk isključen u komentarima. Želite li pročitati više odgovora od drugih tehničkih korisnika Stack Exchangea? Pogledajte cjelokupnu temu za raspravu ovdje.