Так PATH
не работает. Если я добавлю родительский каталог, я не могу просто вызвать дочерний:
$ cat ~/foo/bin/bar.sh
#!/bin/sh
echo yeh!
Теперь, если я добавлю ~/foo
к моему PATH
, я не смогу вызвать скрипт с помощьюbin/bar.sh
:
$ PATH="~/foo:$PATH"
$ bin/bar.sh
bash: bin/bar.sh: No such file or directory
Я могу сделать это, только если я уже в~/foo
:
$ cd ~/foo/
$ bin/bar.sh
yeh!
Правильный способ сделать файлы в каталоге доступными — добавить сам каталог в PATH
, а не только родительские каталоги:
PATH="~/foo/bin:$PATH"
Теперь я могу звонить bar.sh
откуда угодно:
$ cd /
$ bar.sh
yeh!
Другими словами, он также не работает на вашем компьютере. Вы просто должны запустить utils/my_script.sh
из /opt/tools
. Попробуйте cd /
, а затем utils/my_script.sh
, и вы увидите, что это тоже не работает.
Если вы использовали команду wget
для загрузки файлов, вы можете проверить команду history
, чтобы вывести список всех ранее использовавшихся команд, и использовать grep "wget"
, чтобы вывести список всякий раз, когда использовалась команда wget.
history | grep "wget" | grep -E "(\-[PO])|(\-\-output-document|\-\-directory-prefix)"
здесь:"(\-[PO])|(\-\-output-document|\-\-directory-prefix)"
означает grep
любое из следующего ниже
-P
или --directory-prefix
в wget
относятся к пути к каталогу, в который необходимо загрузить файл -O
или --output-document
относятся к сохранению в каталог с определенным именем файла Если команда wget
использовалась в каком-то скрипте bash, вы можете cat
использовать скрипт и следовать тому же методу
cat script.sh | grep "wget" | grep -E "(\-[PO])|(\-\-output-document|\-\-directory-prefix)"
из вывода этого вы можете выяснить, где должны храниться все файлы, загруженные с помощью wget
.