我希望 - [space]作为AWK中的字段分隔符。
例如,
awk -F-[space] {' print $1 '}
如何在AWK中将多个字符作为字段分隔符?
[编辑]
Vlad命令的确切输出
$echo /Users/Sam/Dropbox/Education/Chemistry/Other\ materials/*.pdf | sed -e 's: : - :g'
/Users/Sam/Dropbox/Education/Chemistry/Other - materials/CHE_IB_LAB.pdf - /Users/Sam/Dropbox/Education/Chemistry/Other - materials/Lecture19_20_21.pdf
带有sed的Vlad命令的确切输出
$echo /Users/Sam/Dropbox/Education/Chemistry/Other\ materials/*.pdf
/Users/Sam/Dropbox/Education/Chemistry/Other materials/CHE_IB_LAB.pdf /Users/Sam/Dropbox/Education/Chemistry/Other materials/Lecture19_20_21.pdf
答案 0 :(得分:5)
知道你的引用:),但要注意GNU awk
的{{1}}采用扩展正则表达式(ERE)作为其参数,因此如果你想要一个文本,你可能还需要相应地转义匹配而不是ERE匹配,例如
-F
<强>更新强>
您的最新评论仍不清楚。
我需要一个具体的例子,例如
以下文件:
awk -F '- ' '{ print $1 }'
我想要显示:
../Phy/Phy1/file1.pdf
../Phy/file2.pdf
../Che/Che1/file3.pdf
../Che/file4.pdf
../file5.pdf
../Phy2/file6.pdf
请注意,对于上面的示例文件,命令:
PhyPhy1 file1.pdf - Phy file2.pdf - Che/Che1 file3.pdf - Che file4.pdf
仅显示:
echo lpr ../{Che,Phy}/{*.pdf,*/*.pdf}
让我们先把这部分放好,然后我们会担心破折号等。
<强>更新强>
行。请运行以下一个或两个几乎等效命令:
lpr Che/file4.pdf
lpr Che/Che1/file3.pdf
lpr Phy/file2.pdf
lpr Phy/Phy1/file1.pdf
然后请修改您的原始帖子并添加以下内容,分开: