Когда я работаю which
управляйте, чтобы это ничего не показывало.
Я выполнил все они, и ни один не дал вывод.
$ which /tool/
$ which RED*.pdf
$ which anime
$ which -a anime
$ info which
$ which -a
$ which -a Downloads
$ which Downloads
$ which doc
$ which media
$ which /media
$ which
$ su -
# which
# which doc
# logout
$ which --help
Illegal option --
Usage: fusrfbinfwhich [-a] args
$ which info
/usr/bin/info
$ which help
$ which cd
$ info which
$ which -a info
/usr/bin/info
$ which -a
$ which -a list.txt
От man which
:
NAME
which - locate a command
SYNOPSIS
which [-a] filename ...
DESCRIPTION
which returns the pathnames of the files (or links) which would be executed
in the current environment, had its arguments been given as commands in a
strictly POSIX-conformant shell. It does this by searching the PATH for
executable files matching the names of the arguments. It does not follow
symbolic links.
я не ожидал бы which
давать любой вывод - как man
, страница говорит, Вам нужно имя файла, которое является командой.
Попытка, работающая which ls
.
Это могли быть Вы, хотят знать , где команда - для этого Вам нужен whereis.
$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz
Хорошее начало было бы:
man which
NAME
which - shows the full path of (shell) commands.
Ни один из примеров, обеспеченных в Вашем снимке экрана, не является командой, которая могла возвратить путь. Например, CD является сборкой в команде.
я не понимаю то, что Вы ожидаете получать с
which /tool/
и т.д.
, но это кажется, который не является инструментом для достижения результата, который Вы ожидаете.
существует несколько подобных команд, которые имеют решительно различные методы и выводы:
/usr/bin/which
Определяют местоположение двоичного пути исполняемого файла.
$ which ssh
/usr/bin/ssh
/usr/bin/whereis
Поисковые стандартные местоположения Linux для источника, двоичного файла и руководств для указанного имени.
$ whereis ssh
/usr/bin/ssh
/usr/bin/find
Поиск текущий или указанный путь рекурсивно для соответствующих строк.
(cd /usr/bin && find . ssh)
...
./things_it_checked
...
ssh
/usr/bin/grep
Искомый текст/files/paths для строки.
(cd /usr/bin && ls * | grep ssh)
ssh
ssh-add
ssh-agent
ssh-keygen
ssh-keyscan
В моем случае myscript.sh
хорошо работал, покупают which
(ни whereis
) не возвращал вывода:
$ which myscript.sh
$
я фиксирую его изменяющийся ~
(тильда) к $HOME
:
export PATH="$PATH:$HOME/myprgms
теперь также whereis -l
показывают мою добавленную папку.
См. этот ответ для больше о различии между ~
и $HOME
.