Поэтому, пока я тестировал программу на Python, над которой я работал, я заметил, что echo -e "\n"
и printf "\n"
соответствии с оператором if
в bash.
Несмотря на то, что echo -e "\n"
печатает две новые строки (по умолчанию он добавляет одну), а printf печатает только одну.
if [ "$(echo -e "\n")" == "$(printf "\n")" ]
then
echo 1
fi
а также
if [ $(echo -e "\n") -eq $(printf "\n") ]
then
echo 1
fi
оба выхода 1 в баш. Я также заметил, что присвоение выходных данных переменной выводит только одну новую строку для echo -e "\n"
и printf "\n"
,
A=$(echo -e "\n")
B=$(printf "\n")
echo $A # outputs a single newline
echo $B # also outputs a single newline
так что я думаю, что echo
может выводить символ новой строки с помощью fx. STDERR?