【发布时间】:2018-02-08 19:46:30
【问题描述】:
我正在为学校学习 UNIX,我应该创建一个命令行,该命令行接受一个文本文件并生成一个字典索引,显示单词(不包括冠词和介词)以及它在文件中出现的行。
我在:https://unix.stackexchange.com/questions/169159/how-do-i-use-awk-to-create-an-index-of-words-in-file?newreg=a75eebee28fb4a3eadeef5a53c74b9a8 中发现了与我类似的问题,问题是当我运行解决方案时
$ awk '
{
gsub(/[^[:alpha:] ]/,"");
for(i=1;i<=NF;i++) {
a[$i] = a[$i] ? a[$i]", "FNR : FNR;
}
}
END {
for (i in a) {
print i": "a[i];
}
}' file | sort
输出包含特殊字符(我不想要),例如:
-Quiero: 21
Sancho,: 2, 4, 8
如何删除所有特殊字符并排除冠词和介词?
【问题讨论】:
-
您正在测试的示例文件是什么?您的预期输出是什么?