1.cp 复制
cp ./* /dest_dir
2.mv 移动
mv ./* /dest_dir
当文件特别多时,./* 会显示列表太长报错,此时需要用到xargs配合使用
3.xargs 当文件特别多,和管道一起使用
ls | xargs -I {} mv ./{} /dest_dir/{}
cat path.txt | xargs -I {} mv ./{} /dest_dir/{}
xargs参数
-t 表示先打印命令,然后再执行
-i 或者是-I,这得看linux支持了,将xargs的每项名称,一般是一行一行赋值给 {},可以用 {} 代替。
-i 只能用{} 代替赋值
-I 可以用任何符号代替赋值,但是要先指定
4.diff
diff -r directory1 directory2 # diff对文件的每一行都比较,文件多或大时谨慎使用
diff file1 file2 > diff.log
diff file1 file2 -y --suppress-common-lines # 将两个文件行内容不同部分,拼接成一行输出,以空格+| 符号分隔开
diff file1 file2 -wy --suppress-common-lines # 比较时忽略行首行尾空格
https://www.jb51.net/article/140596.htm
https://www.cnblogs.com/wf-linux/p/9488257.html
5.uniq
常和sort连用
cat file1 | sort | uniq -d > repeat.log
cat file1 | sort | uniq -d | wc -l
-d 仅显示重复的项
-c 在列旁边显示每项出现的次数
-u 显示只出现了一次(uniq)的项
同时使用wc命令查看显示有多少项重复了或者有多少唯一项
6.sort
cat file | sort | wc # 默认将第一列用ASCII次序排列,并将结果打印到标准输出
7.head tail sed
显示输出头尾多少行
cat file.log | head # 默认是10行
cat file.log | head -n 5
cat file.log | tail
cat file.log | tail -n 5
cat file.log | head -n 2 | tail -n 1 # 打印输出的第二行内容
sed -n '2p' # 打印第二行内容 2 第二行 p print
https://www.cnblogs.com/shengulong/p/7892242.html
https://www.runoob.com/linux/linux-comm-sed.html # sed
8.wc -l
cat file | wc # 显示行数 字节数等
cat file | wc -l # 只显示行数
9.split
split -l 2000 filename.txt -d -a 2 split_file_
# -l 文件按以多少行为一个子文件划分 上述以每2000行划分一个文件
# filename.txt 要切割的文件
# -d 子文件命名以数字递增
# -a 命名文件数字的位数 上述以2位数字组合命名 split_file_ 00 split_file_ 01 ........
# split_file_ 输出前缀文件名
https://www.runoob.com/linux/linux-comm-split.html
https://www.cnblogs.com/liyichen/p/9878413.html
10.grep
grep -wf file1 file2 # 查看两个文件相同的行
grep -wvf file1 file2 # 查看两个文件不同的行
https://blog.csdn.net/SeaSky_Steven/article/details/86078120