5

Я пытаюсь запустить простой скрипт bash, который использует команды wc и cat . Сценарий не с этим:

wc: command not found

или это (после того, как я прокомментировал строку, которая использует wc):

cat: command not found

Я понятия не имею, что происходит. Подобный скрипт, который содержит точно такие же фрагменты кода, работает просто отлично. Оба сценария используются в одинаковых условиях. Кроме того,

machine:~ user$ which wc
/usr/bin/wc

а также

machine:~ user$ which cat
/bin/cat

1 ответ1

3

Как указывает @Tyson, переменная PATH содержит ответ.

Я просто хотел отметить, что использование полных путей в ваших скриптах обычно считается хорошей практикой. Например, вместо вызова wc вы можете вызвать /usr/bin/wc . Помимо решения вышеупомянутой проблемы, это более безопасно, так как вы предотвращаете запуск приложения, которое кто-то, возможно, поместил в вашу переменную PATH с тем же именем ... Я не могу вспомнить названия этих атак, но вы поняли идею =)

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