Поэтому, пока я тестировал программу на 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?
