In Linux How to find file names starts with zi and exactly 8 character in length
我怎样才能找到长度正好为8个字符的文件,它以zi开头实例名称:
1 2 3 4 5 | /home/ziDZaTxG /home/ziIbLnaG /home/ziQxgoXh /home/ziw2NOBD /home/zixqlM2S |
find /home/ -name"zi*"
这可以正常工作并找到它,但不能计算出8个匹配的字符。
使用问号通配符,它正好匹配一个字符。
1 | find /home -name"zi??????" |
下面是一个运行示例:
1 2 3 4 5 | [developer:~/t] $ touch zi1 [developer:~/t] $ touch zi123456 [developer:~/t] $ touch zi1234567 [developer:~/t] $ find . -name"zi??????" ./zi123456 |
您还可以选择使用-regex选项"查找"。
要查找文件名的长度,需要删除路径,并且只匹配最后一个文件名之后的字符/
将输出传输到grep命令:
1 | find /home/ -name"zi*" |grep -P '/.{8}$' |
-P:激活Perl表达式
。走到最后
8:8个字符
美元:结束