【发布时间】:2014-01-21 21:25:08
【问题描述】:
我想用 sed 从 perl 脚本中删除 \",
sed -ne '
#(here some substitutions...)
s/print "\(.*[^"]\)"/\1/p;
' | \
sed -e 's/\\"/"/g'
是否可以只在第一次替换完成的行上用" 替换\"?换句话说,将这个脚本放在一行中?
分支并不酷,因为如果已经完成了未列出的先前替换,则条件被认为是真实的(但尚未完成最新的替换)......
示例:
#! /usr/bin/perl
(...)
while (@someArray) {
print "la variable \"$_\" est cool!\n";
syslog ('info|machin', "la variable \"$_\" est cool!");
}
到
"la variable "$_" est cool!\n"
但在
中没有可能的替换 syslog ('info|machin', "la variable \"$_\" est cool!");
如果之前选择了此行。
【问题讨论】:
-
我认为一些具有预期输出的示例输入数据对那些希望帮助您的用户非常有帮助。
-
@MUYBelgium 能否提供样例输入输出???
-
从您的描述来看,如果您坚持使用
sed (single sed)、t或T(gnu sed)是唯一的出路。
标签: sed