我想在 bash 脚本的每一行之后打印一个 \ 。
示例:$k 的输出为:
git-core
nano
apache2
现在我想使用 apt 安装这个包。我现在唯一的解决方案是:
sudo apt-get install git-core \
nano \
apache2
我如何添加这个字符?
正如建议的那样,您可能正在为您的问题寻找错误的解决方案。
您可以将 $k 中的换行符替换为空格:
k=$(echo "$k" | tr '\n' ' ')
更好的是,您可以利用 bash 单词解析,知道 apt 包名称的名称中没有空格(并假设您确定 $k 包含的所有内容都是包名称,由换行符分隔):
sudo apt-get install $k
缺少对 $k 的引用将使 bash 将换行符重新解析为常规的单词分隔符(空格)。
如果出于其他原因,您真的想在每行的末尾添加反斜杠,您可以随时使用 sed:
echo "$k" | sed 's/$/\\/'