Где Вы находите исходные файлы Bash программ в LINUX/MAC OSX?

Я в настоящее время пишу некоторые удобные методы для своего терминала в моем bash_profile и уверен, является ли то, что я пишу, "лучшим способом". Я изображаю хороший способ проверить, правильно ли то, что я делаю, или не должно было бы найти некоторый исходный код более установленных программ и видеть, как они делают это.

Мой вопрос затем, где я могу найти этот код своего Mac? Пример с установленным Macports, где исходный код, который открывает порт интерактивная консоль, когда я ввожу только "порт" в своей оболочке?

(Я добавил Linux в заголовке даже при том, что я нахожусь на Mac, потому что я предполагаю, что ответ был бы тем же для обоих),

Править: Ответ, который я ищу, с точки зрения которого каталог относительно программ будет я находить их сценарии Unix.

1
задан 06.01.2011, 21:18

3 ответа

Многие команды компилируются код C (или другие языки, такие как C++ или Objective C), а не сценарии оболочки (некоторые могли быть Perl, AWK, Python, и т.д.). Можно использовать file команда для обнаружения, который они.

$ file /bin/grep
/bin/grep: ELF 32-bit LSB executable ...
$ file /bin/which
/bin/which: POSIX shell script text executable

Можно использовать что-то вроде этого для нахождения сценариев оболочки в системе:

find /bin -executable -type f -exec bash -c 't=$(file {}); if [[ $t =~ shell\ script ]]; then echo {}; fi' \;

Замените различными начальными каталогами для поиска различных частей файловой системы. Использовать -perm -111 вместо -executable если Ваш find не имеет последнего.

2
ответ дан 12.12.2019, 13:00

Сценарии Bash хорошо, в ударе, иначе простой текст, можно открыть их в текстовом редакторе.
Однако большинство *отклоняет инструменты, записаны в C/C++.
Я настоятельно рекомендую Программирование Bash чтения - Вводное ПРАКТИЧЕСКОЕ РУКОВОДСТВО, Усовершенствованное Руководство по созданию сценариев Bash и это руководство bash4.

И как персональное предпочтение, я рекомендую проверить Python также.

0
ответ дан 12.12.2019, 13:00

Если я считал это правильно, Вы ищете "ведущее устройство" или .bashrc файлы?

Основной bashrc расположен здесь/etc/bashrc, и Ваше собственное будет скрыто в Вашем корневом каталоге ~/.bashrc, копия корневого каталога прибывает из/etc/skel/.bashrc

Теперь команда "порта" является просто ссылкой на/usr/bin/port, как Вы видите путем входа/usr/bin и прокрутки хотя файлы. Каждый будет работать из-за Вашего vaiable $PATH (который может быть установлен в bashrc), Если Вы хотите видеть то, что Ваш $PATH является просто типом он в терминале.

Эти инструкции для Linux и не могут быть тем же на Вашем Mac.

Я также предлагаю изучить ссылки oneOfone.

с уважением

0
ответ дан 12.12.2019, 13:00

Теги

Похожие вопросы