printf awk diff cmp patch pr

257 阅读2分钟

printf '打印格式' 实际内容

\a 警告声音输出

\b 退格键

\f 清除屏幕

\n 输出新一行

\r enter键

\t 水平tab键

\v 垂直tab键

\xNN NN为两位数的数字,可以转换数字为字符

%ns n为数字 多少字符串

%ni n为数字 多少整数字符

%N.nf 浮点数 例如有十个位数,小数点为两位10.2f (0000000.00)

awk:数据处理工具

awk '条件类型1{动作1} 条件类型2{动作2}.....' filename

awk主要处理每一行的字段内的数据,而默认的字段的分隔符为“空格键”或“tab键”。$0代表的是一整列资料 每一行的$0代表的就是那一行

NF 每一行拥有的字段总数

NR 目前awk所处理的是第几行数据

FS 目前的分隔字符,默认是空格键

diff 用于比较两个文件的差异 还可以比对不同目录下的相同文件名的内容

diff [-bBi] from-file to-file from-file:一个档名,作为原始比对文件的档名 to-file :一个档名,作为目的比对文件的档名

-b :忽略一行当中,仅有多个空白的差异(例如“about me”与“about me”相同) -B :忽略空白行的差异 -i :忽略大小写的不同

cmp 主要在比对两个文件,他主要利用字节单位去比对

cmp [-l] file1 file2 -l :将所有的不同点的字节处都列出来。因为cmp预设仅会输出第一个发现的不同点

patch 将旧的文件升级为新的文件

以/tmp/testpw内的passwd.old与passwd.new制作补丁文件

patch -pN < patch_file <==更新 patch -R -pN < patch_file <==还原 -p :后面可以接取消几层目录的意思 -R :代表还原,将新的文件还原成原来旧的版本

pr 文件打印准备

pr可以打印出标题