1. 问题, 如何压缩相邻的空白行?
cat -s _file
2. 问题, 怎么显示制表符?
cat -T file.py
3. 问题, 显示行号?
cat -n
4. 问题, 如何列出当前目录及子目录下所有的文件和文件夹?
find .
其他find . -name "*.txt" 同时-iname为忽略大小写
找出当前目录下的py文件
find . -maxdepth 1 -name "*.py" maxdepth 最高深度为1, 不查询子目录
同样 mindepth为最小深度
[hadoop@aliyun1 test]$ find . -mindepth 1 -name "*.py"
./a.py
./test2/z.py
./test2/test3/a3.py
[hadoop@aliyun1 test]$ find . -mindepth 2 -name "*.py"
./test2/z.py
./test2/test3/a3.py
[hadoop@aliyun1 test]$ find . -mindepth 3 -name "*.py"
./test2/test3/a3.py
[hadoop@aliyun1 test]$ find . -mindepth 4 -name "*.py"
[hadoop@aliyun1 test]$
-maxdepth和-mindepth应该作为find的第三个参数出现。如果作为第4个或之后的参数,就可能会影响到find的效率,因为它不得不进行一些不必要的检查。例如,如果-maxdepth作为第四个参数,-type作为第三个参数,find首先会找出符合-type的所有文件,然后在所有匹配的文件中再找出符合指定深度的那些
5. 问题, 找出 所有txt文件和 rb文件.
find . \( -name "*.txt" -o -name "*.rb" \) -o 是or的意思
或
find . -regex ".*\(\.py\|\.sh\)$" 同样 -iregex忽略大小写
6.问题 找出不是sh的文件
find . ! -name "*.sh"
7. 按类型查找:
Unix类系统将一切都视为文件。文件具有不同的类型,例如普通文件、目录、字符设备、块设备、符号链接、硬链接、套接字以及FIFO等。
-type可以对文件搜索进行过滤.
[hadoop@aliyun1 test]$ find . -type d
.
./test2
./test2/test3
[hadoop@aliyun1 test]$ find . -type f
./b.sh
./a.py
./test2/z.py
./test2/test3/b3.sh
./test2/test3/a3.py
./test2/test3/c3.rb
./test2/y.sh
./test2/x.rb
普通文件 f
符号链接 l
目录 d
字符设备 c
块设备 b
套接字 s
FIFO p
访问时间(-atime):用户最近一次访问文件的时间。
修改时间(-mtime):文件内容最后一次被修改的时间。
变化时间(-ctime):文件元数据(例如权限或所有权)最后一次改变的时间。
8. 打印出在最近7天内被访问过的所有文件
find . -type f -atime -7
打印出恰好在7天前被访问过的所有文件
find . -type f -atime 7 -print
打印出访问时间超过7天的所有文件:
find . -type f -atime +7 -print