script.sh
#!/bin/sh
awk '{if ($1=="%%Page:" && $2=="(1)" && $3== "1" ) {print "%%BeginPageSetup""\n""<<"" ""/Duplex" ;print $0;}
else if($1=="%%Page:" && $2=="(2)" && $3== "2" ) {print "%%BeginPageSetup" ;print $0}}' $1 > ss.txt
input.txt中
vaibhav
gupta
%%Page: (1) 1
vaibhav
gupta
%%Page: (2) 2
vaibhav
运行:
./script.sh input.text
输出:
%%BeginPageSetup
<< /Duplex
%%Page: (1) 1
%%BeginPageSetup
%%Page: (2) 2
输出应该是
vaibhav
gupta
%%BeginPageSetup
<< /Duplex
%%Page: (1) 1
vaibhav
gupta
%%BeginPageSetup
vaibhav
如上所述。
答案 0 :(得分:0)
打印出要打印的内容:
if ($1=="%%Page:" && $2=="(1)" && $3== "1" ) ...
else if($1=="%%Page:" && $2=="(2)" && $3== "2" ) ...
&#34;如果第一个字段是%%Page:
,第二个和第三个字段是(1)
和1
或(2)
和2
&#34;。
看起来像这个废话:
ffjfjfjfjfjdrrr
gghhhhhh
dhjdfhjfhjfdhj
errrrrrrrre
ryryryryryryry
不符合您的编码要求。
要获得预期的输出,请先:}' $1 > ss.txt
添加以下内容:else print
。