pgrep
pgrep名字前有个p,我们可以猜到这和进程相关,又是grep,当然这是进程相关的grep命令。不过,这个命令主要是用来列举进程ID的
想要找到SSH服务器的PID
>pgrepssh1529284392844228719
pgrep会在每一行打印一个匹配的进程。-d选项允许你指定一个分隔符
>pgrepssh-d""15292843928442287192881028813
-l选项告诉pgrep显示名称和ID:
>pgrep-lssh1529sshd28439sshd28442sshd28719sshd
pstree
这个命令可以以树形的方式列出进程
>systemd─┬─NetworkManager───2*[{NetworkManager}]├─VGAuthService├─abrt-watch-log├─abrtd├─agetty├─atd├─auditd───{auditd}├─crond├─dbus-daemon───{dbus-daemon}├─firewalld───{firewalld}├─gssproxy───5*[{gssproxy}]├─irqbalance├─java───28*[{java}]├─lsmd├─lvmetad├─master─┬─pickup│└─qmgr├─mcelog├─nginx───nginx├─ntpd├─polkitd───6*[{polkitd}]├─redis-server───4*[{redis-server}]├─rngd├─rpcbind├─rsyslogd───2*[{rsyslogd}]├─smartd├─sshd─┬─sshd───sshd───sftp-server│└─sshd─┬─bash───pstree│└─sftp-server├─systemd-journal├─systemd-logind├─systemd-udevd├─tuned───4*[{tuned}]└─vmtoolsd───2*[{vmtoolsd}]
bc
这个命令主要是做一个精度比较高的数学运算的。比如开平方根等。下面是一个我们利用bc命令写的一个脚本(文件名:sqrt)
#!/bin/bashif[$#-ne1]thenecho'Usage:sqrtnumber'exit1elseecho-e"sqrt($1)\nquit\n"|bc-q-ifi
>./sqrt.sh123.00sqrt(123.00)11.09quit
split
如果你有一个很大的文件,你想把其分割成一些小的文件,那么这个命令就是干这件事的了
>split-b100mmysql.tar>ls-lh-rw-r--r--.1rootroot517MJun2122:35mysql.tar-rw-r--r--.1rootroot100MJun2122:35xaa-rw-r--r--.1rootroot100MJun2122:35xab-rw-r--r--.1rootroot100MJun2122:35xac-rw-r--r--.1rootroot100MJun2122:35xad-rw-r--r--.1rootroot100MJun2122:35xae-rw-r--r--.1rootroot17MJun2122:35xaf
文件合并
>catxa*>mysql.tar
nl
nl命令其它和cat命令很像,只不过它会打上行号
>nlrumenz.sh112323453rumenz.com41115222
ldd
这个命令可以知道你的一个可执行文件所使用了动态链接库
>ldd/usr/bin/lslinux-vdso.so.1=>(0x00007ffdb51ba000)libselinux.so.1=>/lib64/libselinux.so.1(0x00007f4518ead000)libcap.so.2=>/lib64/libcap.so.2(0x00007f4518ca8000)libacl.so.1=>/lib64/libacl.so.1(0x00007f4518a9f000)libc.so.6=>/lib64/libc.so.6(0x00007f45186d1000)libpcre.so.1=>/lib64/libpcre.so.1(0x00007f451846f000)libdl.so.2=>/lib64/libdl.so.2(0x00007f451826b000)/lib64/ld-linux-x86-64.so.2(0x00007f45190d4000)libattr.so.1=>/lib64/libattr.so.1(0x00007f4518066000)libpthread.so.0=>/lib64/libpthread.so.0(0x00007f4517e4a000)
col
这个命令可以让你把man文件转成纯文本文件。如下示例:
>pgrepssh-d""152928439284422871928810288130
lsof
可以列出打开了的文件。
>pgrepssh-d""152928439284422871928810288131