use*_*171 2 bash quotes escaping sed
我试图做一些bash与sed被证明是非常困难的.
我有一个bash脚本,它的第一个参数是日期.
代码想要更改文本文件中的一行以包含传递的日期.这是代码
#!/bin/bash
cq_fname="%let outputfile="/user/cq_"$1".csv";"
sed "29s/.*/\"$ct_fname\"/" file1.sas > file2.sas
Run Code Online (Sandbox Code Playgroud)
这个脚本在第三行失败,我得到一些关于乱码的命令.有没有人知道一个聪明的方法让它工作?如何在引号中加入正斜杠sed?
您可以使用任何字符代替/,所以只需选择一个不在的字符$ct_fname:
sed "29s|.*|\"$ct_fname\"|" file1.sas > file2.sas
Run Code Online (Sandbox Code Playgroud)