2015-05-19 3 views
2

У меня есть вопрос относительно git. Я, возможно, совершенно не согласен с тем, как я даже приближаюсь к вопросам, поэтому я был бы рад услышать совершенно другое мнение о том, как это сделать.Символически связать файлы внутри подкаталога git

Я сохраняю несколько скриптов python и bash в папке, которую я поддерживаю как utils. В нем есть папки внутри, такие как mesh_tools с различными файлами python внутри, которые выполняют случайные эзотерические задания. Поскольку он становится все больше и я переключаю компьютеры, я хочу, чтобы мне не пришлось вручную входить и символически связывать все эти файлы в/usr/local/bin или где-то еще на моем пути.

Есть ли способ рекурсивно символически связать файлы (и это даже хорошая идея) или создать PATH, который рекурсивно просматривает? Или я просто перехожу к этому совершенно неправильно? Любые мнения или предложения были бы весьма признательны.

ответ

2

Вам просто нужны все двоичные файлы/etc. в тех каталогах, которые будут доступны в виде команд автоматически?

Предполагая, что в этих каталогах нет других не двоичных файлов, вы можете просто добавить все эти каталоги в свой PATH напрямую.

Просто добавьте что-то вроде этого (непроверено) в сценарии запуска оболочки.

while IFS= read -r -d '' dir; do 
    PATH="$PATH:$dir" 
done < <(find toplevel -type d -print0) 

Если это не так, вы всегда можете написать скрипт установки или сделать цель, Symlinks все исполняемые файлы в целевом каталоге, а затем просто поместить этот каталог в PATH. Вы можете запустить этот скрипт столько раз, сколько захотите, и при необходимости добавит новые ссылки. (Написание его так, чтобы он удалял старые ссылки, был бы изящным и/или предполагал бы полный контроль над каталогом и просто заменил его на совершенно новый.)

+0

Так как это git, есть много README.md и другие маленькие файлы. Что-то вроде этого общего? Я решил, что это проблема, с которой люди сталкивались с git специально, потому что вы всегда хотите, чтобы ваш/usr/local/bin включал в себя последние двоичные файлы. – fatalaccidents

+1

Полагаю, что у большинства людей есть «установка», цель или сценарий, который символизирует все двоичные файлы в определенном месте (а затем они помещают это местоположение в их «PATH»). –

Смежные вопросы