команда wc / cat не найдена

команда wc / cat не найдена

Я пытаюсь запустить простой скрипт 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

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

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

Связанный контент