5

в терминале Mac, как найти файл в текущем каталоге или подкаталогах?

имя файла:

2 ответа2

16
find . -iname something.py

(«.» указывает текущий каталог). -iname заставляет find проверять следующий аргумент для имен файлов без учета регистра, что является нормой для файловых систем Mac OS.

1

Пожалуйста, не путайте "Команды терминала" с командами оболочки или командной строкой.

Это терминал: http://en.wikipedia.org/wiki/File:Terminal-dec-vt100.jpg

В частности, это DEC VT-100, возможно, наиболее используемый тип терминала для UNIX еще во времена разработки UNIX. До середины 1980-х годов было большое количество различных терминалов. Все, что можно было сделать, - это отображать символы на экране, перемещать курсор по экрану и некоторые другие второстепенные функции, такие как очистка до конца строки, или прокручивать дисплей на 1 строку вверх.

Хотя это устройство может показаться вам ранним ПК, это не ПК. Единственное, что может сделать это устройство - отображать символы текста на своем экране. и он сам не принимает решения о том, какие символы идут на экране или куда они идут на экране. Ему было приказано, что делать компьютеру, обычно многопользовательскому компьютеру с разделением времени.

Несмотря на эти ограничения, эти терминалы - это то, что пользователи обычно используют для UNIX, программирования, запуска приложений, игр (да, игр), электронной почты, IRC, чата и т.д. Но все, что мог сделать Терминал, это отображать символы на своем экране, так как же запустить редактор в нем?

Вы не могли и не сделали. Редактор работал на многопользовательском компьютере с временным разделением, скажем, PDP-10, к которому могло быть подключено 30 или 40 терминалов. Таким образом, одновременно может быть 30-40 пользователей одного компьютера. Они могли бы даже все редактировать одновременно. Но как?

У каждого пользователя были свои процессы. Пользователь, который занимался редактированием, запускал сеанс редактирования внутри PDP10, а программа редактора внутри PDP10 отправляла «" Команды терминала "** на терминал, чтобы показать что-либо на экране терминала.

Вот некоторые фактические терминальные команды для vt100:

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

[; H Установите курсор в положение X, Y на экране.

[0 K Очистить строку от текущей позиции курсора до конца строки

[1 K Очистить линию от начала до текущей позиции курсора

[2 K Очистить всю строку (позиция курсора не изменилась)

[3 0 м отправка этих трех символов приведет к тому, что терминал установит черный цвет фона

В конце концов, аппаратные терминалы полностью исчезли. Но нам все еще нужен был терминал для того, чтобы быть устройством ввода и отображения для тех тысяч и тысяч программ, которые работают в UNIX (и теперь, конечно, в Linux). Вот где появились эмуляторы терминала X-windows. Это небольшие графические программы, которые эмулируют то, что происходит на реальном аппаратном терминале при запуске программы. Они открывают окно, которое выглядит и ведет себя как настоящий терминал (или почти).

Эмуляторы терминала включают в себя X-term, Gnome Terminal, Konsole и другие. Помните - ни один из них не является терминалом. Это эмуляторы терминала. Если вы отправите им команды терминала, как показано выше, вы будете непосредственно контролировать то, что показывает экран эмуляции терминала.

Конечно, отправка escape-символов и управляющих символов - это боль, поэтому разработчики UNIX, естественно, создали некоторые инструменты, чтобы упростить задачу. Terminfo, termio, curses и tput - это специальные утилиты, которые значительно упрощают отправку команд терминала на эмуляторы терминала. Большинство людей считают tput наиболее полезным из этих вариантов. Поэтому, когда вы находитесь в командной строке Bash, вводите команды, cat, awk, grep и т.д., Помните, что вы не запускаете "Терминальные команды", вы запускаете команды оболочки или команды командной строки. :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .