У меня есть следующий простой скрипт:
#!/bin/bash
echo "Bash version ${BASH_VERSION}..."
for i in {1..99..2}
do
echo $i
done
Вывод, если я запускаю с sh file.sh:
Bash version ...
{1..99..2}
Вывод, если я запускаю с bash file.sh:
Bash version 4.2.25(1)-release...
1
3
5
.
.
.
99
У меня есть два запроса:
Если я написал строку shabang, определяющую shell, не должен ли он работать с bash, использую ли я
sh file.shилиbash file.sh?Я понимаю, что
$BASH_VERSIONне распознается sh, но в чем проблема для цикла? Почему не печатать цифры?
dash, которое, как вы говорите,shв Ubuntu, в основном не присутствует, «чтобы быть экстренным сообщением для обстоятельств DIRE», но вместо этого система может работать и запускаться быстро. , Таким образом,dashхорошо подходит для использования в современных ОС, но то , что он хорошо подходит для как низкопрофильной, быстрая оболочка для написания сценариев - особенно, работает система скриптов при загрузке большой, сложной, современной ОС, с минимальными затратами накладные расходы.