/ / Bash не запускати мою просту сценарій оболонки [дублікат] - bash, shell, cp

Баш не запускає мою просту сценарій оболонки [дублікат] - bash, shell, cp

Коли я виконуюinit-hooks я отримав

bash: init-hooks: command-not found

Ось вміст init-гачок:

#!/bin/bash
set -e
printf "ncopying hooksnn"
cp ./hooks/* ../../.git/hooks

Коли я виконую cp ./hooks/* ../../.git/hooks від bash безпосереднє виконання є успішним. (зауважте, що це та сама команда, що і в скрипті)

Доказ файлів знаходяться в каталозі та результатах виконання: введіть опис зображення тут

Чому мій сценарій поводиться інакше, ніж команда / чому мій скрипт не знайдено?

Відповіді:

2 для відповіді № 1

У системах Linux (де bash походить з) поточна директорія, як правило, не включається в шлях з міркувань безпеки.

Біжи echo $PATH щоб перевірити, які каталоги використовуються для пошуку виконуваних файлів, коли вони надаються в командному рядку без шляху. Поточний каталог (.) не повинно бути там.

Запустіть скрипт як ./init-hooks і bash знайде це.


0 для відповіді № 2

Я спромігся запустити його таким чином

./init_hooks

або введіть повне ім'я файлу.

переконайтеся, що сценарій виконуваний

chmod + x ./init_hooks