如何打印Shell中的某些文件以外的文件

时间:2013-12-03 08:49:37

标签: shell

我可以使用下面的shell来打印以aaa开头的文件名。

ls -l aaa *

但是如何使用ls命令或if子句

排除某些要打印的模式

假设我要打印除包含expr的文件名以外的所有文件。

[文件列表]

aaa.out

expr01

aexpr02

find.sh

ch.txt

3 个答案:

答案 0 :(得分:1)

您可以在ls命令中使用--hide选项

ls --hide='pattern'

答案 1 :(得分:0)

试试这个:

ls -l aaa* | grep -v "expr"

将“-v”视为negati * v * e search。

答案 2 :(得分:0)

如果您的shell是Bash,则可以使用extended globbing

shopt -s extglob
ls !(expr)

您可以使用shopt -u extglob再次关闭扩展的globbing。