Не могу создать скрипт sh - PullRequest
0 голосов
/ 19 марта 2020

На моем терминале Ubuntu 18.04 я пытаюсь это сделать:

cd home/myusername/bin
cat -n > test
#!/bin/sh
echo "Hello World"
chmod 755 test

Затем, когда я пытаюсь запустить свой скрипт с sh, я получаю:

test: 1: test: 1: not found
test: 2: test: 2: not found

Когда я запустите его с bash, я получу:

test: line 1: 1: command not found
test: line 2: 2: command not found

, и когда я запустил его, как это ./test, я получу:

test: line 1: 1: command not found
test: line 2: 2: command not found

Я убедился, что sh находится в каталоге bin, а также каталог, который я создал test, находится в переменной пути, но он ничего не сделает, если я попытаюсь запустить его с его именем.

Я не могу выяснить, что я делаю не так.

Ответы [ 2 ]

1 голос
/ 19 марта 2020
vincent@idefix:/tmp$ cat << EOF > test
#!/bin/sh

echo "Hello World"
EOF

chmod + x / tmp / test

1 голос
/ 19 марта 2020

cat -n помещает номер строки перед каждой строкой, как вы можете видеть, если вы делаете cat test, чтобы показать содержимое файла, который вы написали.

Оболочка не понимает эти номера строк и пытается запустить программу с именем 1:, 2: и так далее.

Просто пропустите -n.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...