bal*_*lki 12 command-line bash
我有一些命令可以在末尾没有新行的情况下产生输出,就像这样
Myprompt$ somecmd
dksfjdl
dsfjdlkfj
dsfjdkfj
dfjdkfjMyprompt$
Run Code Online (Sandbox Code Playgroud)
目前我通过somecmd | sed 's/$/\n/' | tr -s '\n'
是否有更好的方法来解决这个问题?
Kje*_*sen 20
只需在它之后运行 echo,它应该会生成一个换行符
Myprompt$ somecmd ; echo
Run Code Online (Sandbox Code Playgroud)
如果您需要将它提供给其他东西,请在子 shell 中运行它:
Myprompt$ ( somecmd ; echo ) | someothercmd
Run Code Online (Sandbox Code Playgroud)
或者..正如@camh 指出的那样,实际上不需要子shell,您可以使用当前shell环境中的命令列表执行它:
Myprompt$ { somecmd ; echo ; } | someothercmd
Run Code Online (Sandbox Code Playgroud)