Сценарий, переставший работать с “командой, не найденной: ^M”

Уже существует много хороших ответов здесь, но одно предложение, которое я добавлю, состоит в том, чтобы рассмотреть использование LiveCDs/LiveUSB как первого шага. Это позволит Вам загружаться непосредственно от съемных носителей, таким образом, можно будет играть с распределением, не имея необходимость устанавливать его сначала. Это - относительно безболезненный способ намочить ноги с различными дистрибутивами.

Много дистрибутивов имеют в наличии LiveCDs и некоторый LiveCDs дважды, поскольку установочный носитель должен Вы принимать решение согласиться на конкретную разновидность Linux. Некоторые ссылки:

Fedora LiveUSB HowTo

Ubuntu LiveCD

1
19.05.2019, 14:29
1 ответ

Ваш сценарий оболочки находится в текстовом формате DOS/Windows (с CR+LF). Преобразуйте его в формат Unix (например, используйте dos2unix).

Это не будет работать, как Вы хотите хотя, как объяснено в связанном вопросе. Новая оболочка выполняется, переменная, которую она установила, затем концы оболочки, беря переменную с ним.

Если у Вас есть сценарий, который использует ту же оболочку в качестве той, которую Вы выполняете (или имеет совместимый синтаксис), то можно выполнить сценарий при помощи . или source. Таким образом, скрипт запущен, как будто Вы ввели все это в себе, таким образом, все переменные остаются (и это проигнорирует #! строка).

5
27.01.2020, 23:17
  • 1
    Спасибо @teppic! Я вижу... Как я должен запустить скрипт set_color_scheme.sh если я не хочу запускать новую оболочку? Проблема, которую я имею, состоит в том, что путь я в настоящее время преуспеваю zsh путем вызова /bin/zsh от tcsh (оболочка по умолчанию в системе), поскольку нам не "разрешают" изменить нашу оболочку по умолчанию. Мое беспокойство то, что если источник файл через . или source, это может вызвать оболочку по умолчанию на него (tcsh), и нет zsh. Действительно ли мое беспокойство невыровнено? Если я просто использую source или . файл после вызова /bin/zsh ? –  Amelio Vazquez-Reina 06.09.2012, 04:22
  • 2
    я обновлю основной ответ с деталями. –  teppic 06.09.2012, 05:44
  • 3
    я думаю эта ошибка конкретно, прибывает из export LS_COLORS=$( \ - символ продолжения строки должен быть последним знаком на строке, и здесь это сопровождается возвратом каретки. –  glenn jackman 06.09.2012, 06:57

Теги

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