我会尝试在文本文件的每一行末尾添加&& \
,但不包括最后一行。
示例输入:
ps
mkdir repo
cd repo/
touch file1.txt
期望的输出结果:
ps && \
mkdir repo && \
cd repo/ && \
touch file1.txt
第一次尝试
我尝试过这个方法,但它会在每一行(包括最后一行)输出&& \
:
awk '{print $0"&& \\"}' RS="\r*\n\r*"
第二次尝试
我尝试使用sed:
sed '1s/^//;$!s/$/"&&" \\/;$s/$//'
这似乎会添加额外的换行符:
ps
&& \
mkdir repo
&& \
cd repo/
&& \
touch file1.txt
&&
后面加反斜杠。但是听起来你想要尝试使用bash -e
来运行脚本。 - tripleee&&
后的行末不需要使用“\”。此外,您可以尝试不同的方法(如果它是完整的脚本) - 将shell的“-e”标志设置为在第一个失败的命令之后退出。您可以通过使用sh -e
来执行此操作,或者您可以在脚本开头加上set -e
。 - Toby Speight