Linux 如果要使用grep命令,当find命令没有问题时,如何编写命令?
我的OS简介老师希望我输入一个命令,该命令长列/etc目录,并查找所有修改或创建的大小为4096字节的文件 我的答案就是Linux 如果要使用grep命令,当find命令没有问题时,如何编写命令?,linux,unix,Linux,Unix,我的OS简介老师希望我输入一个命令,该命令长列/etc目录,并查找所有修改或创建的大小为4096字节的文件 我的答案就是find/etc-size 4k-ls 我应该如何使用grep命令来执行此操作?这似乎是毫无意义的…这毫无意义,但在其中,你会习惯于看似疯狂的需求,因此这里有一个: $ ls -l /etc | grep "^-\([^ ]* *\)\{4\}4096 " -rw-r--r-- 1 root root 4096 Oct 27 2014 wget
find/etc-size 4k-ls
我应该如何使用grep命令来执行此操作?这似乎是毫无意义的…这毫无意义,但在其中,你会习惯于看似疯狂的需求,因此这里有一个:
$ ls -l /etc | grep "^-\([^ ]* *\)\{4\}4096 "
-rw-r--r-- 1 root root 4096 Oct 27 2014 wgetrc
这是一个文件(^-
用于目录等)^d
字段和分隔空间[^]**
是前面的四倍,即文件大小在第五个字段中\(…\)\{4\}
文件大小。请注意尾部的空格将大小精确限制为40964096
ls-l/etc|grep…
,但我更喜欢您的命令。这对于grep
来说非常棘手,因为如果您只使用grep4096
,它将匹配行中的任何位置,因此它将在名称中包含4096
的文件。但我怀疑你们的老师不在乎这种不太可能的匹配。欢迎来到Stack Overflow!编程问题也是如此,而不是关于使用或配置Linux的问题。请尝试SuperUser.com或unix.stackexchange.com。