я хочу перейти к определенному файлу без его поиска, зайдя во все каталоги и введя ls, и все, что я знаю, это имя файла, и я хочу, чтобы его путь был только с именем файла.Пожалуйста, помогите мне новичку в программировании на Unix, и я заинтересован в его тщательном изучении.И у меня есть homebrew и iTerm (zsh).Спасибо.

3 ответа3

0

Существует приложение под названием Go2Shell. Это приложение помещает значок в окне поиска, которое при нажатии приведет вас в тот же каталог в терминале или в окне iTerm. Таким образом, если вы отобразите каталог с вашим файлом в окне поиска, щелкните значок Go2Shell, чтобы открыть окно терминала для этого каталога.

Если вы просто хотите указать путь к файлу, вы можете щелкнуть правой кнопкой мыши по файлу и удерживать нажатой клавишу выбора. Один из вариантов - скопировать путь к выбранному файлу.

Другой вариант - ввести «locate filename» в терминале. В нем будет указан полный путь к файлу, если он его найдет.

0

Если вы хотите найти исполняемый файл в вашей переменной PATH, вы можете использовать команду which :

$ which ls
/bin/ls

Если вы хотите найти файл по имени, вы можете использовать команду find . Например, чтобы найти файл с именем sample.txt где-нибудь в вашем текущем каталоге или любых его подкаталогах:

$ find . -name sample.txt
./sample.txt
./temp/sample.txt

В приведенном выше примере find два файла с именем sample.txt

Вы можете использовать подстановочные знаки в имени (не забудьте поставить имя в кавычках, например. '*.txt') и есть много других вариантов, чтобы сузить ваш поиск. Для получения дополнительной информации в команде find :

$ man find
0

Я предполагаю, что вы видите файл в окне Finder и хотите попасть в этот каталог без необходимости вводить длинную команду cd .

Вы можете перетащить файл или папку из окна Finder окно Terminal.app : это приведет к тому, что /path/to/file.name будет напечатано в позиции курсора.

Поэтому, если бы я хотел перечислить файлы папки на моем рабочем столе в окне терминала, я сначала набрал в терминале ls -l , а затем перетащил папку в окно Terminal.app .

[nevin-mac-mini:~/Desktop] nevin% ls -l /Users/nevin/Desktop/Eclipse 
total 584
-rw-r--r--@ 1 nevin  staff  126127 21 Aug 15:32 DSC_7956 (1).jpg
-rw-r--r--@ 1 nevin  staff   95940 21 Aug 15:50 DSC_7960.jpg
-rw-r--r--@ 1 nevin  staff   71307 24 Aug 08:42 DSC_8025.jpg
drwxr-xr-x  5 nevin  staff     170 23 Aug 18:19 publish
[nevin-mac-mini:~/Desktop] nevin% 

Имя папки /Users/nevin/Desktop/Eclipse автоматически вводилось, когда я перетаскивал значок папки со своего рабочего стола в окно Terminal.app .

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