我在提取'[ ]'
之间的内容并使用shell脚本进行比较时遇到了很多困难。之后我需要用[]
删除其他字段。
我收到了文件名为内容som [xxxx]
模式的文件,其中一个很有用,我用它来对它们进行分类。
一个例子:
Input: sample[t.225][lb.445][21042013][0913605].extension
Output (pattern lb.445): sample[lb.445].extension
我知道我可以使用带有模式的grep,但之后我不知道如何擦除文件名中的其他字段。我认为使用grep的策略不是最佳选择,并且在shell脚本和模式比较中使用循环声音的选项非常奇怪。
答案 0 :(得分:1)
awk -F'[][]' '{print $1"["$4"]"$NF}' input
上面一行采用第二个[...]
块
在你的问题中举例:
kent$ echo "sample[t.225][lb.445][21042013][0913605].extension"|awk -F'[][]' '{print $1"["$4"]"$NF}'
sample[lb.445].extension