Проблемы с запуском первого шеллскрипта - PullRequest
0 голосов
/ 23 апреля 2019

Я пытаюсь создать свой первый скрипт оболочки в bash.Я создал код и мне удалось сохранить скрипт в моем домашнем каталоге, но он не запустится.Сначала я пытаюсь запустить его из домашнего каталога с: ./testscript.sh с " разрешением " в качестве ответа, затем я попытался sudo ./testscript.sh, а затем команда " не найдена ".

Это мой сценарий:

#!/bin/bash  

mkdir -p/home/filer
touch /home/filer/fil1
touch /home/filer/fil2
touch /home/filer/fil3
tar-zcvf file.tar.gz /home/filer

Итак, я попытался создать сценарий, который создаст каталог с именем" filer "в моем домашнем каталоге, используя touch для создания 3 отдельныхфайлы в каталоге «filer», а затем создание tar.archive из всего каталога «filer».Я думаю, что сценарий правильный, я мог бы просто использовать руку для запуска сценария.

1 Ответ

0 голосов
/ 23 апреля 2019

За исключением нескольких опечаток (mkdir -p/path -> mkdir -p /path, tar-zcvf ... -> tar -zcvf ...), вы должны обращаться к своему домашнему каталогу, используя переменную окружения $HOME. /home/filer - это абсолютный путь к каталогу, который, как я предполагаю, не является вашим настоящим домашним каталогом.

#!/bin/bash

mkdir -p $HOME/filer
touch $HOME/filer/fil1
touch $HOME/filer/fil2
touch $HOME/filer/fil3
tar -zcvf file.tar.gz $HOME/filer

Вы можете выполнить скрипт ./testscript.sh как bash testscript.sh или ./testscript.sh.

Во втором случае сценарий должен иметь надлежащие права на выполнение. chmod +x ./testscript.sh дает ему полные права на выполнение.

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