3.21-22 od、tee
3.21 od:按不同进制显示文件
od命令用于输出文件的八进制、十六进制或者其他格式编码的字节,通常用于显示或查看文件中不能直接显示在终端的字符。
-A 地址进制 按指定的进制显示地址信息
地址进制包括:
o 八进制(系统默认值)
d 十进制
x 十六进制
n 不打印位移值
-t 显示格式 指定数据的显示格式
主要参数有:
a 命名字符,忽略高阶位
c ASCII字符或反斜杠序列(如\n)
d 有符号的十进制数
f 浮点数
o 八进制(系统默认值)
u 无符号十进制数
x 十六进制数
查看二进制命令文件的内容。
[root@cs7-sm ~]# file /bin/ls #<一像ls命令是一个二进制命令,通过cat命令查看会发现一堆乱码。 /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=ceaf496f3aec08afced234f4f36330d3d13a657b, stripped [root@cs7-sm ~]# od -Ax -tcx /bin/ls|more 000000 177 E L F 002 001 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 464c457f 00010102 00000000 00000000 000010 002 \0 > \0 001 \0 \0 \0 324 B @ \0 \0 \0 \0 \0 003e0002 00000001 004042d4 00000000 000020 @ \0 \0 \0 \0 \0 \0 \0 360 303 001 \0 \0 \0 \0 \0 00000040 00000000 0001c3f0 00000000 000030 \0 \0 \0 \0 @ \0 8 \0 \t \0 @ \0 037 \0 036 \0 00000000 00380040 00400009 001e001f 000040 006 \0 \0 \0 005 \0 \0 \0 @ \0 \0 \0 \0 \0 \0 \0 00000006 00000005 00000040 00000000 000050 @ \0 @ \0 \0 \0 \0 \0 @ \0 @ \0 \0 \0 \0 \0 00400040 00000000 00400040 00000000 000060 370 001 \0 \0 \0 \0 \0 \0 370 001 \0 \0 \0 \0 \0 \0 000001f8 00000000 000001f8 00000000
3.22 tee:多重定向
tee命令用于将数据重定向到文件,同时提供一份重定向数据的副本作为后续命令的标准输入。简单地说就是把数据重定向到给定文件和屏幕上。
-a 向文件追加内容,而不是覆盖
tee命令允许标准输出同时把内容写入(覆盖)到文件中的实践示例。
[root@cs7-sm ~]# ls |tee test1 gb2312.txt test1 test2 test_win.sh [root@cs7-sm ~]# cat test1 #<==ls命令接管通和tee命令,在屏靠上输出ls的结果,同时将结果写入到test1.txt。会清空原有的内容 gb2312.txt test1 test2 test_win.sh
tee命令允许标准输出同时把内容追加到文件中的例子实践。
[root@cs7-sm ~]# ls |tee -a ls test1 #<==使用参数-a可以追加内容到文件中,不会清空文件中已有的内容。 gb2312.txt ls test1 test2 test_win.sh [root@cs7-sm ~]# cat test1 gb2312.txt test1 test2 test_win.sh gb2312.txt ls test1 test2 test_win.sh