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