Я хотел бы использовать echo
в bash для печати строки символов, за которой следует только возврат каретки. Я просмотрел справочную страницу и обнаружил, что echo -e
сделает echo
интерпретировать escape-символы обратной косой черты. Используя это, я могу сказать echo -e 'hello\r'
, и он будет печататься следующим образом
$>echo -e 'hello\r'
hello
$>
Итак, похоже, что он правильно обработал каретку. Я также нашел, что echo -n
в man-странице остановит echo
от вставки символа новой строки, и похоже, что он работает, когда я это делаю
$>echo -n 'hello\r'
hello\r$>
Проблема, с которой я столкнулась, заключается в объединении как -e
, так и -n
. Я пробовал каждый из echo -e -n 'hello\r'
, echo -n -e 'hello\r'
, echo -en 'hello\r'
и echo -ne 'hello\r'
, и ничего не печатается так:
$>echo -ne 'hello\r'
$>
Есть ли что-то, чего я здесь не вижу, или варианты -e
и -n
не будут использоваться вместе?