Linux下常用的命令
1.whoami 查看当前登录用户名
2.groups 查看当前登录用户的组内成员
3.groups tomcat 查看tomcat用户所在的组,以及组内成员
4.cat /etc/group 文件包含所有组
5.cat /etc/shadow和/etc/passwd系统存在的所有用户名
6.查看系统是32位还是64位
# ls -l /unix
lrwxrwxrwx 1 root system 21 May 06 2001 /unix ->; /usr/lib/boot/unix_mp
为32位内核。
# ls -l /unix
lrwxrwxrwx 1 root system 21 May 06 2001 /unix ->; /usr/lib/boot/unix_64
为64位内核。
或者uname -a
7.查看so文件时32位还是64位编译的,参考链接:http://www.linuxidc.com/Linux/2015-04/116353.htm
AIX系统32位的没有说明
#file /usr/ccs/lib/mcrt0.o
/usr/ccs/lib/mcrt0.o: executable (RISC System/6000)orobjectmodulenot stripped
#file /usr/ccs/lib/mcrt0_64.o
/usr/ccs/lib/mcrt0_64.o: 64-bit XCOFF executable orobjectmodulenot stripped
8.vi编辑器显示文件的行号:在命令模式下,set nu
9.查找目录下文件中包含的字符串:grep -rn "hello,world!" *
10.如果服务器上没有安装ftp,可以通过scp传送。
11.查看so文件中的函数列表:nm -D XXX.so > function.list
12.利用awk
awk -F '\x01' '{if(NF!=113){print NR,NF}}' qjkq.tbl_txn.20180910.0000.dat > all.txt
查看qjkq.tbl_txn.20180910.0000.dat这个文件中^A这个字符,如果每行^A的个数不等于113,则输出该行号和实际^A的个数,最好重定向输出到all.txt中。
13.sed
sed -i "s/\x00/^A/g" qjkq.tbl_txn.${DATE_LOAD_PRE}.0000.dat
查找qjkq.tbl_txn.${DATE_LOAD_PRE}.0000.dat文件中\x00这个字符,然后替换为^A。
14.read
从标准输入读取数值或者从文件中读取一行
15.wc
统计行数、字数以及字节数,-l只显示行数
16.grep
查询文件内容,前后搜索
grep -A 5 'parttern' filename //打印匹配行的后5行
grep -B 5 'parttern' filename //打印匹配行的前5行
grep -C 5 'parttern' filename //打印匹配行的前后5行
grep -5 'parttern' filename //打印匹配行的前后5行
grep -1 '2019080728464627' einstein.2019-08-07-* 查日志利器啊,可用查看当天所有的日志
查询文件后几行
tail -200 newton.2019-08-02-0.log | grep -A 3 '分页查询到' 后
tail -200 newton.2019-08-02-0.log | grep -C 10 '分页查询到' 前后
统计字符串出现的个数
grep -o '调用vinci失败' newton.2019-08-08-0.log | wc -l