вывод цикла while в сценарии bash

Календарь работает только с указанием дня и месяца как в версии BSD, так и в версии systemV. Есть несколько возможных обходных путей , например, с помощью

at 2:44pm Jul 15 ,2016

at> echo  "remind this"|mail -s reminder user

Или, что лучше, напомнить

0
06.03.2018, 17:48
1 ответ

La forma estándar de hacer aritmética en el shell es $((..)). El estándar test/ [solo admite comparaciones y otras pruebas. Entonces, la versión conforme al estándar -sería:

if [ "$(( p % 2 ))" -ne 0 ]; then...

(Eso solo necesita las comillas si su IFScontiene dígitos, por lo que generalmente no son necesarios.)


En Bash/ksh/zsh, puede usar la construcción ((.. )), que funciona como un comando y también permite la prueba:

if (( p % 2 != 0 )); then...

La prueba [[parece permitir algo de aritmética, pero es un poco exigente con la sintaxis/los espacios en blanco, por lo que probablemente no debería hacerlo.


En cuanto a por qué la asignación a pno persiste fuera del bucle, consulte

2
28.01.2020, 02:32

Теги

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