Сценарий, не выполняемый согласно ожиданию

Из списка параметров ядра:

resume=     [SWSUSP]
        Specify the partition device for software suspend

где

SWSUSP  Software suspend (hibernation) is enabled.

Таким образом да, это используется для спящего режима.

3
17.05.2013, 17:23
1 ответ

ScriptB имеет окончания строки CRLF. Так как ядро не поддерживает CRLF, оно пытается выполнить названную программу "/path/to/bin/perl\r" (где \r указывает на CR). Та программа не существует. Преобразуйте ScriptB в окончания строки LF. (Будьте благодарны за то, что Stephane Chazelas задает правильный вопрос. \r в sed вывод указывает на проблему.)

sed l\;q FILE выполнения 2 команды sed (разделенный точкой с запятой, которой нужно оставить, потому что это - также метасимвол оболочки). От man sed:

l  List out the current line in a "visually unambiguous" form
q  Immediately quit the sed script without processing any more input,
   except that if auto-print is not disabled the current pattern space will be printed.

Так l печатает первую строку в формате, который обычно делает скрытые символы как CR видимыми, и затем q выходы после первой строки.

5
27.01.2020, 21:17
  • 1
    Но как две строки возвращаются командой sed в обсуждении. Согласно Вашему объяснению это должно просто возвратить одну строку т.е. первую строку сначала –  Mayank Jain 17.05.2013, 18:08
  • 2
    Также, если проблема со сценарием, почему брошенная ошибка Command not found вместо этого ошибка должна быть брошена perl –  Mayank Jain 17.05.2013, 18:11
  • 3
    , из которого я сократил объяснение q потому что это - только первая строка вывода, это значительно. –  cjm 17.05.2013, 18:11
  • 4
    Проблема состоит в том, что ядро не запускается perl потому что Вы сказали этому искать perl\r. Perl может обработать сценарии с окончаниями строки CRLF; это - ядро, которое имеет проблему с ними. –  cjm 17.05.2013, 18:12

Теги

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