终端中每行后打印字符

时间:2013-05-14 14:20:33

标签: bash terminal apt

我想在bash脚本中的每一行之后打印\。

实施例: $ k的输出是:

git-core
nano
apache2

现在我想使用apt安装这个软件包。我现在唯一的解决方案是:

sudo apt-get install git-core \
nano \
apache2

如何添加此角色?

1 个答案:

答案 0 :(得分:1)

正如所建议的,您可能正在为您的问题寻找错误的解决方案。

您可以使用空格替换$ k中的换行符:

k=$(echo "$k" | tr '\n' ' ')

更好的是,你可以利用bash单词解析,知道apt包名称的名称中没有空格(假设你确定所有$ k包含的是包名,由换行符分隔):< / p>

sudo apt-get install $k

缺少$ k的引用会使bash将换行符重新解析为常规单词分隔符(空格)。

如果由于其他原因,真的非常希望在每行的末尾添加反斜杠,则可以始终使用sed:

echo "$k" | sed 's/$/\\/'