Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

查找文件 find/grep

  • find 查找文件

    • find . -name "*.json"
      • 把当前目录(.)下(包括子目录),以.json结尾的所有文件找出来
      • find . -name \*.json 可以不用双引号,但要转义
      • 名称是区分大小写的,除非换成-iname
    • find /usr /home /tmp -name "*.jar"
      • 指定多个目录,找到以.jar结尾的所有文件(可能要权限)
    • find . -ctime -7
      • 把当前目录下(包括子目录),最近7天更新过的文件找出来
    • find / -print > result.out
      • 如果一定要在根目录下查找,最好在非高峰期运行,且输出到文件里
  • grep 筛选内容

    • grep xx aaa 输出aaa文件中,含有xx字符串的行
      • 等价于cat aaa | grep xx,结合cat和管道使用
    • 可加参数
      • -v 输出不含xx字符串的行(veserse)
      • -n 加上行号(number)
      • -i 忽略字母大小写(ignore),默认是区分大小写的
      • -c 只输出满足条件的行数(count)
      • -e xx -e yy含有xx或yy字符串的行
    • 字符串可换成正则表达式(要求是Unix风格)
      • 如果要用POSIX风格的正则,请换成egrep命令