1)
sed -i 's/10.0/100/g' C:\Users\22022857\Desktop\new 2.txt
sed: can't read C:\Users\22022857\Desktop\new: No such file or directory
sed: can't read 2.txt: No such file or directory
注:名字不能有空格,会认为两个文件
2)
repos_dir=/root/git_repo
sed -i "s/REPO_DIR=.*/REPO_DIR=${repos_dir}/" ./test.sh
sed: -e expression #1, char 23: unterminated `s command
注:参数含有符号/会出错
解决方法:将/替换成%即可
sed -i "s%REPO_DIR=.*%REPO_DIR=${repos_dir}%" ./test.sh
3)
sed -i 's%<value>10.0</value>%<value>100</value>%g' C:\Users\22022857\Desktop\new2.txt
系统找不到指定的文件。
注:单引号的问题,我换成双引号可以
sed -i "s%<value>10.0</value>%<value>100</value>%g" C:\Users\22022857\Desktop\new2.txt
4)匹配是不是以行粒度呀下面不能执行
sed "s%
<name>throughput</name>
<value>10.0</value>
%
<name>throughput</name>
<value>100</value>
%g" C:\Users\22022857\Desktop\new2.txt
sed: -e expression #1, char 2: unterminated `s command
sed "s%<name>throughput</name>
<value>10.0</value>
%<name>throughput</name>
<value>100</value>
%g" C:\Users\22022857\Desktop\new2.txt
5)
os.system("sed -i 's/10.0/100/g' {0}".format(r'C:\Users\22022857\Desktop\new2.txt'))
sed: cannot rename ./sed53xehm: Invalid cross-device link
注:好像是路径不在c盘的问题
加上os.chdir("C:\\")就可以了
6)
sed "s%<intProp name="LoopController.loops">-2</intProp>%<intProp name="LoopController.loops">-1</intProp>%g" D:\coding\test\new2.txt
注:双引号的问题
sed "s%<intProp name=\"LoopController.loops\">-2</intProp>%<intProp name=\"LoopController.loops\">-1</intProp>%g" D:\coding\test\new2.txt
7)\d不启作用,用[0-9]替换
sed -i 's/flag\s*=\s*\d\+/flag = 1/g' log
sed -i 's/flag\s*=\s*[0-9]\+/flag = 2/g' log
sed 替换遇到的问题
于 2024-12-06 13:30:56 首次发布