Рейтинг:-2

Проблема с Bash-скриптами

флаг ru

Здравствуйте, я потерялся, извините, я не знаю, почему мой скрипт не запускается

мой сценарий: эхо "привет"

когда я набираю: судо ./мой.ш

это показывает: невозможно выполнить my.sh: нет такого файла или каталога повесить трубку

и когда я набираю: ./my.sh

это показывает: -bash: ./my.sh: bin/bash: плохой интерпретатор: нет такого файла или каталога

было бы здорово, если бы вы могли мне помочь большое спасибо

guiverc avatar
флаг cn
Вы не предоставили никаких сведений об ОС и выпуске; и ваш скрипт не имеет *shebang*, который сообщает системе, какой это тип скрипта и какой интерпретатор/оболочку использовать для его выполнения. Вы сделали его исполняемым?
флаг hr
Похоже, что ваш скрипт **не** просто `эхо "привет"`, а содержит строку `#!`, которая неправильно написана с относительным путем `#!bin/bash` вместо абсолютного пути `#! /бин/баш`
karel avatar
флаг sa
Отвечает ли это на ваш вопрос? [bin/bash: плохой интерпретатор: нет такого файла или каталога](https://askubuntu.com/questions/1158577/bin-bash-bad-interpreter-no-such-file-or-directory)
Рейтинг:1
флаг jp

Три вещи:

  1. Почему судо? На данный момент вы не хотите запускать свой скрипт от имени пользователя root.

  2. Все ваши сценарии должны начинаться с интерпретатора в первой строке. Это знак комментария, за которым следует восклицательный знак. ( "Шебанг") Для bash ваш скрипт будет выглядеть так:

    #!/бин/баш

    эхо "привет"

  3. Вы должны сделать свои сценарии исполняемыми с помощью chmod 700 myscript.sh. Только тогда вы можете выполнить их так ./myscript.sh

В связи с этим, это не конкретно вопрос Ubuntu, а общий вопрос о сценариях.

Yarin Levy avatar
флаг ru
Я использовал Shebang, извините, я не упомянул. Кроме того, я также дал правильные разрешения. Спасибо за ваш ответ
флаг jp
Можете ли вы выполнить `whereis bash`?
pLumo avatar
флаг in
Использование `chmod +x` вместо `chmod 700` не повлияет на чтение и запись, а также на групповые/другие разрешения.
Рейтинг:0
флаг pl

/usr/bin/bash $HOME/my.sh

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

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.