前面我们讲了Linux的常用命令,今天我们再来讲一讲那些不那么常用的命令。
1.1、find
功能:在linux文件系统中,用来查找一个文件放在哪里了。
举例:find /etc -name "interfaces"
总结:
(1)什么时候用find?
当你知道你要找的文件名,但是你忘记了它被放在哪个目录下,要找到该文件时,用find。
(2)怎么用find?
find 路径 -name "文件名"
1.2、grep
功能:在一个文本文件中,查找某个词。
举例:grep -nr "SUN" *
总结:
(1)什么时候用grep?
当你想查找某个符号在哪些地方(有可能是一个文件,也有可能是多个文件组成的文件夹)出现过,就用grep
(2)怎么用?
grep -nr "要查找的符号" 要查找的目录或文件集合
注意:-n表示查找结果中显示行号,-r表示要递归查找
1.3、which和whereis
功能:查找一个应用程序(二进制文件)在哪里
举例:which ls whereis ls
区别
which只显示二进制文件的路径
whereis显示二进制文件的路径,和其源码或man手册位置
1.4、uname
功能:查看系统信息
举例:uname -a
1.5、开机和关机
shutdown -h now立即关机
init 0关机
shutdown -r now立即重启
reboot重启
1.6、tree/lstree
功能:显示文件和目录由根目录开始的树形结构
这里要稍微注意一下:尽量不要在太大的目录下使用这个,如果你在根目录下使用这个指令,差一点的电脑可能会崩溃掉。
1.7、mount/umount
功能:用来挂载磁盘到文件系统中
举例:mount -t nfs -o nolock 192.168.1.141:/root/rootfs /mnt挂载
umount /mnt 卸载
1.8、磁盘空间相关
df -h显示已挂载的分区列表
du -h列出文件或文件夹的大小
du -h 文件名,可以列出这个文件有多大,列出方式是以人比较好看懂的方式。不像 ls -l列出的都是以字节为单位。
1.9、用户管理
useradd user1添加一个名为user1的用户
userdeluser1删除一个名为user1的用户
passwd user1为名为user的用户设置密码
adduser user1添加一个名为user1的用户,同时创建宿主目录,用户shell等。
adduser和useradd的区别:
adduser是一个脚本,而useradd是一个二进制应用程序。adduser创建用户时比较麻烦,但是一次设定完所有的信息;而useradd设置时简单,但是需要额外的设置宿主目录,密码那些信息。
1.10、权限管理
作用:用来管理系统中文件的权限。
chmod (change mode)修改文件权限,比较常用,要记得
chown (change owner,修改属主)
chgrp (change group,修改文件的组)
那么,具体要怎么修改呢?
权限还有另一种表示方法,用数字来表示。
编码规则如下:
r可读4
w可写2
x可执行1
-无权限0
有了这个编码规则,则 rwxr-xr-x 编码后为755
第一种修改权限的方法:
要把权限改成rwxr--r--则对应的编码值为744
修改命令为:chmod 744 文件名
第二种修改权限的方法:
在原来的权限基础上进行修改,即增加或减少某权限。
三个组用户的编码依次为: 属主u,属主所在的组g,其他用户o。
譬如要属主增加可执行权限chmod u x 文件名
其他用户增加可写权限chmod o w 文件名
属主所在组用户去掉可执行权限chmod g-x 文件名
我们可以看到效果。
1.11、文件打包压缩与解压缩
tar -czvf dir.tar.gz dir/将dir目录打包成dir.tar.gz
tar -cjvf dir.tar.bz2 dir/将dir目录打包成dir.tar.bz2
tar -zxvf dir.tar.gz 解压缩dir.tar.gz
tar -jxvf dir.tar.bz2解压缩dir.tar.bz2
其中两种打包或者解压缩只是采用不同的算法而已,使用的时候要注意配对使用。
1.12、sed和awk
正则表达式。匹配加替换。
1.13、格式化文件系统
mkfs/dev/hd1
mkfs -t vfat 32 -F /dev/hd1创建一个FAT32文件系统