使用不同的字符串更改“<path>”值取决于最后一行</path>

时间:2013-07-23 16:00:46

标签: sed awk tr

使用不同的字符串更改"<path>"值取决于最后一行。在这种情况下,请在最后一行“*”中查看将"<path>"替换为"ls -lrt"并将"*"与最后一行分开,当使用"find"查看其他任何内容的斜杠时

文字档案:

<path>/etc/inet.d/*.conf
<path>/etc/rc/*
<path>/etc/rc*

期待观点:

find /etc/inet.d/*.conf
ls -lrt /etc/rc/ *
ls -lrt /etc/rc*

1 个答案:

答案 0 :(得分:2)

我认为你的意思是每行的最后一个字符,而不是最后一行!

如果是对的,请查看:

awk '{if($0~/\*$/)sub(/<path>/,"ls -lrt ");else sub(/<path>/,"find ")}7' file

包含您的数据:

kent$  echo "<path>/etc/inet.d/*.conf
<path>/etc/rc/*
<path>/etc/rc*"|awk '{if($0~/\*$/)sub(/<path>/,"ls -lrt ");else sub(/<path>/,"find ")}7' 
find /etc/inet.d/*.conf
ls -lrt /etc/rc/*
ls -lrt /etc/rc*