在bash中,一些命令在命令提示符之前和SAME行上放置了stdout。例如:
$ printf message
message$
$ gettext -d gtk20 File
Fichier$
我希望stdout在NEXT线上的命令提示符的专用线上。我可以在'echo'之前加上像这样的回合刻度,但我想知道是否有更好的方法(一个可以永远/经常使用的arg等):
$ echo `printf message`
message
$
$ echo `gettext -d gtk20 File`
Fichier
$
答案 0 :(得分:2)
尝试在命令后添加; printf "\n"
或; echo
。问题是您的输出不会以换行符结束。
您也可以将命令输出注入单个printf "%s\n"
命令。
答案 1 :(得分:2)
您可以设置提示以自动为您处理。
PS1='$(printf "%$(($(tput cols)-1))s\r")\u@\h [\w]\$ '
来自服务器故障的this question。
它会打印足够的空格以包裹行尾,然后回车(\r
)以返回第一列。您可以像往常一样自定义显示的内容。