匹配“/”一旦进入Awk

时间:2013-02-12 22:27:52

标签: awk terminal

我正在尝试使用awk来提取文件路径中的特定子字符串。鉴于我有a/workspace/folder.fold/secondfolder/file.ext进入awk命令的内容,如何将其作为folder.fold/secondfolder/file.ext生成?

我正在尝试

| awk -F "/" '{ print $2 }'

但这只给了我folder。任何帮助都是肯定的,因为我对awk很新。

编辑:它实际上是a/workspace/folder.fold/secondfolder/file.ext。额外的a/在我的尝试中被拉为1美元。

3 个答案:

答案 0 :(得分:2)

awk不是最好的工具,但您可以这样做:

awk '{ sub( "/[^/]*/","")}1'

答案 1 :(得分:1)

实现所需输出的一些方法是

echo '/workspace/folder.fold/secondfolder/file.ext' | awk -F/ '{for(i=3;i<=NF;i++) printf("%s" ,$i FS)}

echo '/workspace/folder.fold/secondfolder/file.ext' | cut -d / -f 3-

答案 2 :(得分:1)

你可以试试sed

sed -re 's@([^/+]/)([^/]+/)@@' temp.txt

输入

a/workspace/folder.fold/secondfolder/file.ext

输出

folder.fold/secondfolder/file.ext