Как да направите един файл Появява да бъде в няколко папки в същото време?
Ако имате голям брой папки, създадени за вашата работа и трябва да използвате един и същ скриптов файл във всички тях по време на работния ден, тогава какъв е най-лесният начин да постигнете това извън многото копиране и поставяне? Днешната публикация за въпроси и отговори на SuperUser има някои полезни отговори и съвети за разочарован читател.
Днешната сесия за въпроси и отговори идва при нас с любезното съдействие на SuperUser - подразделение на Stack Exchange, групирано от общността уеб сайтове за въпроси и отговори.
Снимка на екрана, предоставена от csaveanu (Flickr).
Въпроса
Четецът на SuperUser Elliot търси най-добрия начин едновременно да изглежда същият файл в няколко папки:
Имам над 50 папки, всяка от които съдържа голямо количество данни, които трябва да бъдат обработени. Всички те се обработват по същия точен код, който се използва os.path.dirname (os.path.realpath (файл)) за да получите директорията, в която се намира Python скрипта, така че не е необходимо ръчно редактиране от страна на потребителя, те просто трябва да кликнат двукратно.
Имам нужда от скрипта да се появи, сякаш е във всяка папка, докато всъщност е само на едно място, така че да мога да го редактирам веднъж, тогава, когато се стартира от някое от тези места, пътят на папката е правилен. Алтернативата е редактиране на майстора и след това поставяне на една папка наведнъж през всичките 50 папки всеки път, когато актуализирам кода, който е много досаден и склонен към грешки. На Линукс, бих могъл да настроя това със символична връзка, но не мога да намеря начин да направя това с Windows.
Като алтернатива, начинът да поставите файла във всички директории с цел, вместо наведнъж, ще постигне същата цел.
Има ли начин да направите това, вместо да копирате и поставяте файл на скрипта по една папка?
Отговорът
Сътрудникът на SuperUser gronostaj има отговор за нас:
Трябва ти Символична връзка или a Hard Link.
Символични връзки (или символните връзки за кратко) са доста сходни с преките пътища: има един действителен файл и множество препратки (символните връзки) към него. Те дори имат тази малка стрелка на иконите. За разлика от преките пътища, символните връзки може да има всяко разширение.
Твърди връзки свържете файл на твърд диск с местоположение в дървото на директориите. Всеки файл има поне един Hard Link, в противен случай няма да съществува в нито една директория. Ако даден файл има няколко Твърди връзки, оригиналният не може да бъде разграничен от останалите и файлът физически съществува само на едно място.
И двете имат своите ограничения:
- Някой софтуер не се играе добре с символните връзки.
- Изтриването на оригиналния файл оставя всичките му символните връзки счупено.
- Не можеш Hard Link папки (но можете да създадете свързване на директория, ако a Символична връзка не е достатъчно).
- Създаване на кръстосано разделение Твърди връзки е невъзможно.
символните връзки обикновено са достатъчни.
Създаване на символна връзка или твърда връзка:
1. Стартирайте привилегирована командна линия: Натиснете Ключ за Windows, Тип ПМС, след това натиснете Ctrl + Shift + Enter.
2. Издайте команда mklink:
- mklink име на връзката link_target за файл Символична връзка
- mklink / d име_на_първица link_target за папка Символична връзка
- mklink / h link_name link_target за файл Hard Link
- mklink / j link_name link_target за a Directory Junction
Имате ли какво да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други технологични потребители на Stack Exchange? Вижте пълната тема за дискусия тук.