文章目录

  • 常用命令
  • diff
  • patch
  • cut
  • sort
  • uniq
  • test


常用命令

数据分析=对字符的处理

diff

命令解读

用来比较两个文件或目录的不同
diff file1 file2
diff direcory1 directory

diff 在比较文件过程中结果读取方式

[num1 , num2][a|c|d][num3,num4] 
num1,num2 表示在第一个文件中的行数
num3,num4 表示在第二个文件中的行数  
a 表示添加 ----add
c 表示更改 ----change 
d 表示删除 ----delete 
< 表示第一个文件中的内容
> 表示第二个文件中的内容
 eg:
 2,4c2,4 表示改变第一个文件中的第二行和第四行才能匹配第二个文件中 的第二行和第四行

diff 中常用的参数

-b		##不检查空格字符的不同 
 -B		##不检查空白行
 -c  	##显示全部内文,并标出不同之处 
 -i		##不检查大小写的不同
 -p 	##若比较的文件为C语言的程序码文件时,显示差异所在的函数名称
 -q 	##仅显示有无差异,不显示详细的信息
 -r 	##比较子目录中的文件 
 -u 	##以合并的方式来显示文件内容的不同

patch

用于文件不同文件打布丁

patch  file.old file.path	##将旧文件更新

shell 执行容器命令 销毁 shell delete命令_分隔符

cut

多用与字符截取

cut -d 指定分隔符
cut -f 1,7|1-7 指定截取的列
cut -c 1,4|1-4 指定截取的字符位置

sort

多用于字符排序

sort -n 	##纯数字排序 
sort -r 	##倒序 
sort -u 	##去掉重复数字 
sort -o 	##输出到指定文件中 
sort -t 	##指定分隔符 
sort -k 	##指定要排序的列

uniq

对重复字符做相应的处理

uniq -u 	##显示唯一的行 
uniq -d 	##显示重复的行
uniq -c 	##每行显示一次并统计重复次数

test

对比

test 命令和 [] 等同 
test "$A" == "$B"  等同 [ "$A" == "$B" ] 	
[ "$A" = "$B" ] 			##判断相等
[ "$A" != "$B" ] 			##不等
[ "$A" -eq "$B" ] 			##相等
[ "$A" -ne "$B" ] 			##不等
[ "$A" -le "$B" ] 			##小于等于
[ "$A" -lt "$B" ]			##小于
[ "$A" -ge "$B" ] 			##大于等于
[ "$A" -gt "$B" ] 			##大于
[ "$A" -ne "$B" -a "$A" -gt "$B" ]	##and 
[ "$A" -ne "$B" -o "$A" -gt "$B" ] 	##or
[ -z "$A" ] 				##判断是否为空
[ -n "$A" ] 				##和条件相反为真,非空为真
[ "file1" -ef "file2" ] 	##判断file1 与file2 是否为同一文件,主要意义在判定,两个文件是否均指向同一个inode(硬链接)
[ "file1" -nt "file2" ] 	##判断file1 是否比file2新
[ "file1" -ot "file2" ]		##判断file1 是否比file2旧
[ -e "file" ] 	##判断该“文件名”是否存在
[ -f "file" ]	##判断该“文件名”是否是普通文件
[ -L "file" ] 	##判断该“文件名”是否是软连接
[ -S "file" ] 	##判断该“文件名”是否是套接字
[ -b "file" ] 	##判断该“文件名”是否是块设备
[ -d "file" ] 	##判断该“文件名”是否是目录
[ -c "file" ]	##判断该“文件名”是否是字符设备


&&	##是,用来执行条件成立后执行的命令 
||	##非,用来执行条件不成立后执行的命令
tr	##大小写转换