我将其作为一个新问题提出,因为人们似乎不理解我原来的问题。
我可以弄清楚如何查找一个单词是否以大写字母开头,后跟 9 个带有代码的字母:
echo "word" | grep -Eo '^[A-Z][[:alpha:]]{8}'
所以这是我应该做的第 1 部分。我的实际脚本应该遍历作为第一个也是唯一一个参数给出的文本文件中的每个单词,然后检查这些单词中是否有任何单词以大写字母开头并且长度为 9 个字母。
我试过了:
cat textfile | grep -Eo '^[A-Z][[:alpha:]]{8}'
和
while read p
do echo $p | grep -Eo '^[A-Z][[:alpha:]]{8}'
done < $1
无济于事。
虽然:
cat randomtext.txt
输出:
The loud Brown Cow jumped over the White Moon. November October tesTer Abcdefgh Abcdefgha
所以它正确输出了文件 randomtext.txt 中的所有单词
那为什么不
cat randomtext.txt | grep -Eo '^[A-Z][[:alpha:]]{8}'
工作?