fine find [path] [options] [tests] [actions] options: depth: 在查看目录之前先搜索目录的内容; -follow: 跟随符号链接; -maxdepth N: 最多搜索N层目录; -mo
fine
find [path] [options] [tests] [actions]
options:
- depth: 在查看目录之前先搜索目录的内容;
- -follow: 跟随符号链接;
- -maxdepth N: 最多搜索N层目录;
- -mount: 不搜索其它文件系统中的目录;
tests:
- -atime N: 文件在N天之前被最后访问过;
- -mtime N: 文件在N天之前被最后修改过;
- -name pattern: 文件名,不包括路径名;
- -newer otherfile: 文件比 otherfile 文件要新;
- -type c: d:目录,f:普通文件;
- -user name: 文件的拥有者是指定的用户 username;
actions:
- exec command: 执行一条命令。这个动作必须使用\;来结束;
- -ok command: 与上一个类似,但是会针对每个要处理的文件,提示用户进行确认;
- -print: 打印文件名;
- -ls:find . -newer while2 -type f -exec ls -l {} \;
grep-(General Regular Expression Parser)
使用find命令在系统中搜索文件,使用grep命令在文件中搜索字符串。
grep [options] PATTERN [FILES]
options:
- -c: 输出匹配行的数目,而不是输出匹配的行;
- -E: 启用扩展表达式;
- -h: 取消每个输出行的普通前缀,即匹配查询模式的文件名;
- -i: 忽略大小写;
- -l: 只列出包含匹配行的文件名,而不输出真正的匹配行;
- -v: 对匹配模式取反,即搜索不匹配行而不是匹配行;
- grep in words.txt 查询字符 in
- grep -c in words.txt words2.txt
- grep -c -v in words.txt words2.txt
正则表达式
- ^: 指向一行的开头;
- $: 指向一行的结尾;
- .: 任意单个字符;
- []: 方括号内包含一个字符范围,其中任何一个字符都可以被匹配,例如字符范围a~e,或在字符范围前面加上^符号表示使用反向字符范围,即不匹配指定范围内的字符;
…