Bash “неожиданный конец файла” на строке 11, нет никакой строки 11

Я пробую новую носатую тему в своей системе Lubuntu, и для выполнения ее я должен запустить сценарий удара:

#!/bin/bash
#sleep 18&&
conky -c /home/mathijs/conky/conky1&&
sleep 1&&
conky -c /home/mathijs/conky/conky2&&
sleep 1&&
conky -c /home/mathijs/conky/conky3&&
sleep 1&&
conky -c /home/mathijs/conky/conkyxx&&
sleep 1&&

Когда я запускаю скрипт, терминал дает мне эту ошибку:

./start.sh: line 11: syntaxerror: unexpected end of file

Все же в сценарии существует только 10 строк. Я переписал его вручную, и проверил снова, но получил ту же ошибку. Что я пропускаю?

1
задан 29 July 2015 в 20:03

2 ответа

Метасимвол оболочки && ожидает команду впоследствии, которая была бы выполнена, если первая команда успешно выполняется.

Thats, почему Вы получаете сообщение об ошибке.

, Например, Вы имеете sleep 1&& в 10-й строке, теперь оболочка будет работать sleep 1 и затем если она успешно выполнится (то код выхода 0) затем (&&) выполнит следующую команду, которая не обеспечивается Вами. Таким образом, Вы добрались бы unexpected end of file сообщение об ошибке.

Также я думаю, что Вы означали использовать & вместо &&.

& возьмет приоритетный процесс к фону, таким образом, можно сделать некоторые другие материалы на переднем плане. Также тот мог бы не быть хорошей идеей с sleep команда (зависит от варианта использования, хотя), как sleep намеревается приостановить выполнение команды в сценарии или терминале для упомянутого количества времени, если Вы возьмете его к фону путем добавления &, например, sleep 1&, то следующая команда будет выполнена немедленно, поскольку порядок выполнения не будет синхронизироваться в этом случае.

8
ответ дан 3 December 2019 в 06:21

Последняя команда sleep 1&& ожидает иметь что-то еще.

, Если Вы удаляете в последний раз &&, не будет никакой ошибки.

1
ответ дан 3 December 2019 в 06:21

Другие вопросы по тегам:

Похожие вопросы: