Выполнять скрипт в режиме sh вместо bash в Shell

Я добавил свой сценарий под названием mylovelyscript.sh в папку /bin/. Мой скрипт содержит код, который echo содержит текст с разными цветами текста. Но когда я запускаю свой скрипт как

$ mylovelyscript

, он выполняется в режиме bash. Итак, мой скрипт дает вывод с текстами с цветовыми кодами, такими как

\e[93mHello World!

, но не с цветными текстами. Но когда я запускаю свой скрипт как $ sh mylovelyscript.sh с командой sh, он выполняется так, как я хочу. Теперь я хочу, чтобы мой скрипт давал мне цветные тексты, как в режиме sh, но в этом случае я хочу назвать мой скрипт как $ mylovelyscript, а не как $ sh mylovelyscript. Как мне это сделать? Спасибо!

0
задан 13.05.2020, 21:49

1 ответ

Поместите эту строку в начале файла:

#!/bin/sh

или:

#!/bin/dash

4
ответ дан 13.05.2020, 21:49
  • 1
    Спасибо @Wutaz! Я думаю, что это будет работать. У меня есть одна проблема, не связанная с этой проблемой: Я переключился на sh режим, как Вы сказали, но знайте, что я должен измениться bash код на sh код, как sh can' t читают bash style код. – Vadzim 13.05.2020, 21:50
  • 2
    там какой-либо путь состоит в том, чтобы сделать это в bash режим? Сделать окрашенным текстами в режиме удара? – 3 revs, 3 users 77%Anonymous 13.05.2020, 21:50
  • 3
    Didn' t Вы говорите выполнение его с sh? – Vadzim 13.05.2020, 21:50
  • 4
    нет, я выполнял его с ударом, я должен сделать это на sh, в моем сценарии существует для... цикла, который я записал для bash, я должен изменить его для sh режим. – remipod 13.05.2020, 21:51
  • 5
    Вы сказали выполнение его с $ sh mylovelyscript.sh. – John Rix 13.05.2020, 21:51

Теги

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