Linux 中执行命令的语法
Linux 中最常见命令的使用
使用一些快捷键提升输入命令的速度
切换用户
重置root密码
Linux中的很多操作都是通过命令行完成的,最常用的输入命令的方法有以下两种。
1. 打开自带的终端,类似于Windows中的CMD。
2. ssh远程连接,关于ssh连接后面有专门章节讲解。
这里ls并没有加任何参数,表示显示当前所在的目录内容。如何查看当前所在目录呢?可
以使用pwd命令
可以看到,命令中所在的目录是/home/blab,所以刚才ls查看的就是/home/blab目录中
的内容
ls /home/blab
ls命令可以加上一个 -a 选项,表示列出所有的内容,包括隐藏文件。
在Linux中,所有以 “ . ” 开头的文件都是隐藏文件。
ls命令可以加上一个 -l(字母 l 不是数字 1)选项,表示以长模式的形式展示。
ls -l /boot/config-4.18.0-348.el8.x86_64
这里显示了/boot/config-4.18.0-348.el8.x86_64 相关属性的信息,包括所有者、所属组
织和权限等,这些后面章节会详细。上面加粗字表示的是文件的大小,这里单位是B,但是
看起来并不能很快识别具体大小,所以可以加上 -h 选项
ls -lh /boot/config-4.18.0-348.el8.x86_64
加上-h选项之后,会以更适合阅读的单位来显示。
在ls后如果以目录作为参数,则显示的是这个目录中的内容,如果想显示这个目录本身的
属性,需要加上 -d 选项。
ls -lhd /boot/
因为这里仅显示了/boot目录本身的属性,并不包括目录里面内容的大小。例如,一个口
袋重1斤,装了500斤重的石头,口袋的重量仍然是1斤。
如果想显示目录及里面内容的总大小,则可以使用du命令。
du -sh /boot/
这里报错信息“无法读取目录”,这里因为当前使用blab用户登录的,权限不够,可以忽
略。
1. -h选项是以跟适合阅读的单位来显示。
2. -s选项是摘要信息,只显示目录总大小,不显示子目录的大小,这里可以看
到/boot 及里面内容的总大小为207M。
下面介绍其它命令的使用。
直接输入date命令,可以显示日期和时间。
![](https://i-blog.csdnimg.cn/blog_migrate/32bc464966938bc42d4aaf4b878de50e.png)
显示日历信息,用法是“cal 月 年”,例如,显示2025年8月的日历
如果不加月、年,则显示今年、本月的日历。
whoami命令可以显示当前是哪个用户在登录。
whoami
屏幕内容太多,可以输入“clear”后,按【Enter】键清屏,或者按【Ctrl+l】组合键清
屏。
命令行中的计算器是bc,bc加上-q选项,是以简洁模式显示。在bc中输入要计算的表达
式。按【Enter】键即可。
可以看见1+1的值为2
这里计算5/2得到的值应该是2.5,但是答案却是2,因为默认情况下bc中并不保留小数点
之后的部分。如果想保留小数点之后的部分,需要通过scale=N指定需要保留小数点之后的
多少位,这里N是一个数字。例如,要保留小数点之后的2位,可以写出scale=2
![](https://i-blog.csdnimg.cn/blog_migrate/902eca3b49b609917983e63a289c534b.png)
在终端中输入命令,必须对它进行解悉/解析,这个解释器就是shell,shell是一种进程。
Linux支持很多种shell。
cat /etc/shells
在Linux中,管理用户是root,在终端中的提示符是#。root的权限很大,为了防止误操
作,平时尽量使用普通用户登录,普通用户登录的提示符是$
但有时普通用户登录时,会遇到权限不够的情况
![](https://i-blog.csdnimg.cn/blog_migrate/d81b91ff082c3ec0806e518bdf4fd64f.png)
这个命令是什么意思暂且不管,后面会讲。但是这里使用 blab 用户执行此命令,被告知
没有权限,只有root用户才能执行这个命令。这个问题可以通过su和sudo命令来解决,其
中sudo命令的使用我们将在8.4节中进行讲解。
su命令可以从当前用户切换到其他用户
su 用户名su - 用户名#注意“-” 两边是有空格的
如果后面没有跟用户名,则默认为root。这里带“ - ”和不带“ - ”的区别在于切换用
户之后的环境变量不一样,关于环境变量后面讲到脚本时会讲
[bdqn@localhost ~]$ whoami[bdqn@localhost ~]$ pwd
这里通过 su 命令已经切换到 root 用户了,因为 su 后面没有加“ - ”,所以切换之后所
在目录并没有发生任何改变,仍然是在/home/blab中的。这样即使切换到root用户了,使
用仍然是blab用户的PATH变量。
[root@localhost bdqn]# echo $PATH
可以看到,现在已经切换到 root 用户了,且所在目录也变成了 root 的家目录 /root。此
时使用的是root用户的PATH变量
![](https://i-blog.csdnimg.cn/blog_migrate/f01d0d4f3d4d5474b78dba067a550291.png)