Linux命令目录
查看当前shell的种类
-
查看当前发行版可以使用的shell:
chao@chao:~$ cat /etc/shells # /etc/shells: valid login shells /bin/csh /bin/sh /usr/bin/es /usr/bin/ksh /bin/ksh /usr/bin/rc /usr/bin/tcsh /bin/tcsh /usr/bin/esh /bin/dash /bin/bash /bin/rbash /usr/bin/screen
-
查看当前使用的 shell :
chao@chao:~$ echo $0 bash
-
查看当前用户(默 认)使用的shell:
chao@chao:~$ echo $SHELL /bin/bash
-
环境变量中shell的匹配查找
chao@chao:~$ env | grep SHELL SHELL=/bin/bash
-
口令文件中 shell的匹配查找
chao@chao:~$ cat /etc/passwd | grep chao chao:x:1000:1000:chao,340,6733,6733:/home/chao:/bin/bash
-
查看当前进程
chao@chao:~$ ps PID TTY TIME CMD 4507 pts/0 00:00:00 bash 8688 pts/0 00:00:00 ps
-
先查看当前shell的pid,再定位到此 shell进程
chao@chao:~$ echo $$ 4507 chao@chao:~$ ps -ef |grep 3052 chao 8710 4507 0 15:30 pts/0 00:00:00 grep --color=auto 3052
-
附:一条命令即可实现:
chao@chao:~$ ps -ef |grep `echo $$` |grep -v grep |grep -v ps chao 4507 4505 0 09:30 pts/0 00:00:00 bash
find命令查找文件
-
过滤错误信息
由于find命令会输出很多无意义的无权限信息等,使得最终查找的文件根本不能在结果中找到。解决方案是将错误信息重定向到 /dev/null 中,以此来获取简明的查找信息。// 错误信息 $ find ./ -name '*ssh*' -type f 输出: ./run/sshd.pid find: ‘./run/lvm’: Permission denied find: ‘./run/lock/lvm’: Permission denied find: ‘./run/initramfs’: Permission denied // 没有错误信息,更加简明 $ find ./ -name '*ssh*' -type f 2>/dev/null 输出: ./run/sshd.pid
-
-name匹配
在find命令中,-name选项后面接的表达式是通配符表达式,不是正则表达式。通配符表达式是一种简单的模式匹配语法,它可以用来匹配文件名或路径名中的特定字符串。通配符表达式中常用的两个特殊字符是*和?,分别表示匹配任意长度的任意字符和匹配任意单个字符。
例如,-name "*.txt"表示查找文件名以.txt结尾的所有文件,而-name "file?.txt"表示查找文件名为fileX.txt(其中X可以是任意字符)的所有文件。
在find命令中,如果需要使用正则表达式来匹配文件名或路径名,可以使用-regex选项。