cha*_*aos 14
只是:
shopt -s extglob
ls a!(*3*)
Run Code Online (Sandbox Code Playgroud)
shopt -s extglob 激活扩展的通配。a 匹配起始 a!()否定()...
*3*这是3什么以及它之前或之后的任何东西。$ touch 1 2 3 a1 a2 a3 b1 b2 b3 aa1 aa2 aa3 a2a a3a
$ ls a!(*3*)
a1 a2 a2a aa1 aa2
Run Code Online (Sandbox Code Playgroud)
现有答案很好地说明了使用 globs 做到这一点的最佳方法;我将包括它,因为在大多数情况下,find如果您想进行脚本编写或进一步处理,这是一个更好的选择:
$ find . -maxdepth 1 -name 'a*' -not -name '*3*'
./a1
./a2
Run Code Online (Sandbox Code Playgroud)
您可以将答案提供xargs给简单的操作,或者将答案提供给while read更复杂的事情的循环。
小智 3
一个简单的方法是
a*3UNIX 命令是
ls -1 a* | grep -v 3
Run Code Online (Sandbox Code Playgroud)
ls -1每行显示一个文件。
grep通常查找与模式匹配的行,但-v这种行为是相反的,即 grep 查找与该模式不匹配的行。
| 归档时间: |
|
| 查看次数: |
3970 次 |
| 最近记录: |