一、关于Linux命令

在Linux系统中,提供了一套非常完备的命令,利用这些命令,我们可以更高效地完成所有的操作任务。

采用命令的方式进行操作的好处是,具有比图形化操作更加快捷高效的特点。但是命令方式不够直观,需要我们熟练记忆命令的用法、格式以及选项和参数等内容。只有我们通过不断地使用,才能运用自如。

二、Shell命令的格式

Shell命令是由命令和多个选项以及参数组成的命令行,各部分之间用空格分隔。重要的是,Shell命令是严格区分大小写的,所以,在使用Shell命令时一定要特别注意。

命令的一般格式如下:

命令名 [选项]...[参数]...

说明(小白请注意):

”[ ]"符号是为了表示一个部分,在编写命令时,不能带上这个符号。比如使用ls [选项] [文件名或目录名]用法时,这样写ls [-s] [hello.txt]是错的,正确写法应该是ls -s hello.txt

同时,“[ ]"符号里面的内容为可选(可写可不写)比如:ls [选项] [文件名或目录名],可以直接使用ls,也可以带上选项ls -s

三、基本命令
1、目录操作命令

命令名:ls
功能:列出当前目录下所有内容
格式:ls [选项] [文件名或目录名]

选项及作用:

选项作用
-s显示每个文件的大小
-S按文件大小排序
-a显示目录中全部文件(包括隐藏文件)
-l使用长列表格式,显示文件详细信息
-t按文件修改的时间排序
-F显示文件类型描述符

命令名:cd
功能:切换用户所在目录
格式:cd [路径名或特殊符号]

特殊符号及作用:

特殊符号作用
/从当前目录跳转到根目录
.前往当前目录
. .前往上一级目录
-前一目录,即进入当前目录之前操作的目录
~回到当前用户的宿主目录

命令名:pwd
功能:显示当前目录的绝对路径
格式:pwd

命令名:mkdir
功能:创建一个新的目录
格式:mkdir [选项] 目录名

选项及作用:

选项作用
-m 权限对新建目录设置存取权限,权限有744、755等
-p一次性创建多级目录(以递归形式创建)

命令名:rmdir
功能:删除一个空目录
格式:rmdir [-p] 目录名(-p代表递归删除各级目录)

2、文件操作命令

命令名:touch
功能:创建一个空文件
格式:touch 文件名

命令名:cat
功能:显示某文件的内容
格式:cat [选项] [文件名]...

选项及作用:

选项作用
-a显示所有字符(换行符、制表符、其它非打印字符)
-n对文件中所有的行进行编号并显示行号
-b除了空行不编号,文件中其它行都进行编号并显示行号
-s将连续的空行压缩为一个空行

cat命令其它格式:

cat 文件名 | ls 表示按页显示文件内容

cat 文件名1;cat 文件名2 表示显示多个文件内容

cat 此命令没有任何参数,即cat单独使用。在开始执行时,光标停留在下一行,等待键盘输入,当用户输入一行后,按下回车,就会显示一行相同的内容。当用户结束输入时,按下Ctrl+D键退出,回到命令提示符下。

cat > 新文件名 ”>“这个大于号是重导向符号。代表把键盘输入的信息重导向输入到新文件中。内容输入结束后,同样也是按Ctrl+D键退出新文件的制作。

cat 文件名1 文件名2 > 文件名3 该用法实现了把文件1和文件2的内容合并输入到文件3中。文件3中的内容是按文件1和文件2的顺序排列的。

cat 文件名2 >> 文件名1 该用法实现了把文件2的全部内容追加到文件1的末尾。

命令名:cp
功能:进行文件的复制
格式:cp [选项] 源文件 目标路径

选项及作用:

选项作用
-i以安全询问方式进行源文件的复制

说明:该命令实现了把源文件复制到目标路径中,文件名不变。如果为目标路径下的文件名,则以文件的重命名方式实现文件的复制。目标路径可以是相对路径,也可以是绝对路径。

命令名:rm
功能:删除指定的文件
格式:rm [选项] 文件名或目录名

选项及作用:

选项作用
-i以安全询问方式进行删除文件
-r递归处理,将指定目录下的所有文件及子目录一并处理
-f强制删除文件或目录
-v显示指令执行过程

命令名:mv
功能:移动指定的文件
格式:mv 文件名 路径名

命令名:chmod
功能:修改文件的权限和属性
格式:
chmod [<文件使用者><操作符号<权限类型>] 文件名1 文件名2...

注:[<文件使用者><操作符号><权限类型>] 作为一个部分,中间不加空格。

文件使用者有( u、g、o、a) 4种类型,在使用时,可以采用其中的任何一个,也可以组合使用。

u:表示user(文件主),就是文件或目录的所有者
g:表示group(组群),文件主所在组群的用户
o:表示other,其他用户
a:表示all,所有用户

操作符号有3种类型,分别是 +、-、=。

+:表示增加权限
-:表示删除或取消权限
=:表示赋予给定的权限给文件使用者,并取消其他权限(如果有的话)

权限类型有3种基本类型,分别是r、w、x,这些类型可以组合使用。

r:代表可读权限
w:代表可写权限
x:代表可执行权限

选项及作用:

选项作用
a+rw为所有用户增加可读、可写的权限
g+w为组群用户可写权限
a-rwx取消所有用户可读、可写、可执行权限
o-rwx取消其他用户可读、可写、可执行权限
a+rw为所有用户增加读、写的权限
ug+r为所有者和组群用户增加读权限
g=rx只允许组群用户可读、可执行,并删除其他权限
自定义可以根据实际需要进行组合

chmod命令的其他格式

格式如下:

chmod [mode] 文件名

mode是指 3个 0~7 范围的八进制数值,分别代表user、group、other 的权限。

其实,我们也可以用数字来表示权限

0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限。

举例:

chmod a=rwx filename

chmod 777 filename

对以上的两个例子分析:

a=rwx表示允许所有用户可读、可写、可执行。

777指三个八进制数值,前面提到了,分别代表的是user、group、other 的权限,即第一个数字”7“指允许user的可读、可写、可执行,第二个数字”7“指允许group的可读、可写、可执行,第三个数字”7“指允许other的可读、可写、可执行。

所以,这两个例子效果是一样的。

懵逼了,”7“怎么就指可读、可写、可执行了呢?

rwx权限=4+2+1=7(可读、可写、可执行)
rw权限=4+2=6(可读、可写)
rx权限=4+1=5(可读、可执行)

再举个例子:
chmod ug=rwx,o=x filename

chmod 771 filename

这两个效果也是相同的。

3、文件处理命令

命令名:grep
功能:在指定的文件中查找指定的字符串
格式:grep [选项] 关键字 文件名

选项及作用:

选项作用
-i不区分大小写

命令名:head
功能:查看文件开头部分的内容
格式:head [数字选项] 文件名

数字选项及作用:

数字选项作用
-3显示文件前3行的内容
-5显示文件前5行的内容
-n显示文件前n行的内容

说明:如果不指定数字选项,即使用命令grep 文件名,则默认只显示文件前10行。

命令名:tail
功能:查看文件结尾部分的内容
格式:tail [数字选项] 文件名

数字选项及作用:

数字选项作用
-3显示文件末尾3行的内容
-5显示文件末尾5行的内容
-n显示文件末尾n行的内容

说明:如果不指定数字选项,即使用命令tail 文件名,则默认只显示文件末尾10行的内容。

命令名:wc
功能:统计文件的行数、单词数、字符数。
格式:wc [选项] 文件名

选项及作用:

选项作用
-l显示文件的行数
-w显示文件的单词数
-m显示文件的字符数

命令名:sort
功能:对文件内容或查询结果进行排序
格式:sort [选项] 文件名

选项及作用:

选项作用
-f忽略大小写
-r反向排序
-t指定分隔符
-i只考虑可以打印的字符,忽略任何非显示字符

命令名:find
功能:查找文件或目录
格式:find 文件名或目录名

命令名:which
功能:按PATH变量所规定的路径进行查找相应的命令,并显示该命令的绝对路径。
格式:which 命令名

4、压缩备份命令

命令名:bzip2
功能:压缩文件
格式:bzip2 文件名1 [文件名2]...
说明:使用该命令对文件进行压缩后,压缩前的原始文件消失,系统会生成一个新的压缩文件,压缩文件的后缀为.bz2。而且,使用该命令压缩的文件,必须用bunzip2来进行解压操作。

命令名:bunzip2
功能:解压文件
格式:bunzip2 文件名1 [文件名2]...

命令名:gzip
功能:压缩或解压文件
格式:gzip [选项] 文件名

选项及作用:

选项作用
-d解压操作
-n指定压缩级别,n的范围是1~9

命令名:unzip
功能:解压以.zip为后缀的压缩文件
格式:unzip [选项] 文件名.zip

选项及作用:

选项作用
-d将文件解压到指定目录中
-n不覆盖原来已存在的文件
-v查看文件目录列表但不解压
-o已默认方式覆盖已存在的文件

举例:
unzip -n filename.zip -d /home/ubuntu将文件filename.zip解压到/home/ubuntu目录中。

命令名:zcat和bzcat
功能:这两个都是用来查看压缩文件内容的,压缩文件不用解压也能查看。
格式:zcat 文件名bzcat 文件名

命令名:tar
功能:对文件或目录进行打包或解包操作
格式:tar [选项] [备份包的文件名] [要打包或解包的文件或目录]

选项及作用:

选项作用
-c创建新的打包文件
-t查看打包文件里的文件目录
-f使用文件或设备
-v显示打包压缩或解包压缩后的文件的详细清单
-x抽取.tar文件的内容
-z打包后直接用gzip命令进行压缩或解压文件
-j打包后直接用bzip2命令进行压缩或解压文件
5、磁盘操作命令

命令名:df
功能:查看当前硬盘的分区信息
格式:df [选项]

选项及作用:

选项作用
-a显示每个文件系统和各分区的磁盘使用情况
-i显示i节点的使用量
-k以千字节(KB)的方式显示分区大小和挂上来的文件分区大小
-h以兆字节(MB)的方式显示分区大小和挂上来的文件分区大小
-t列出某个文件系统的所有分区磁盘空间使用量

命令名:du
功能:查看当前目录下所有文件及目录信息
格式:du [选项]

选项及作用:

选项作用
-a显示所有文件及目录的大小
-h以兆字节(MB)或吉字节(GB)为单位显示文件或目录的大小
-b以字节(B)为单位显示文件或目录的大小
-s列出各文件大小的总和

命令名:fsck
功能:对硬盘进行检测
格式:fsck 分区名

6、关机重启命令

命令名:shutdown
功能:安全关机
格式:shutdown [选项] [时间] [警告信息]

选项及作用:

选项作用
-h将系统服务停掉后再安全关机
-t在规定的时间后关机
-k没有真正关机,只是发出警告信息
-r将系统服务停掉后再安全重启

举例:

shutdown -h +5让系统在5分钟后关机
shutdown -h 21:00让系统在21:00准时关机

shutdown -r +3 "system will be reboot after 3 minuter."让系统在3分钟后重启,并提示用户系统将在3分钟后重新启动

命令名:halt
功能:关机
格式:halt [选项]

说明:该命令单独使用,相当于 shutdown -h命令

选项及作用:

选项作用
-f强行关机

命令名:poweroff
功能:关机
格式:poweroff

命令名:reboot
功能:重启系统
格式:reboot

7、用户操作命令

命令名:sudo
功能:以超级管理员的身份执行某种操作
格式:sudo 命令
说明:在使用一些命令时,会出现cannot lock相关提示,这时我们就需要在对应的命令前加个sudo命令就可以正常执行命令

举例:使用userdel [-r] 用户名命令对用户进行删除操作,可能会出现提示userdel:cannot lock /etc/passwd; try again later.这时候我们使用sudo userdel [-r] 用户名命令就可以正常执行删除用户命令了

提示:一般在对用户进行管理操作时(如:添加用户、修改密码等),都会用到sudo命令

命令名:passwd
功能:修改用户密码
格式:passwd 用户名

命令名:su
功能:切换用户
格式:su 用户名

命令名:useradd
功能:创建新用户
格式:useradd 新用户名

命令名:userdel
功能:删除用户
格式:userdel [-r] 用户名
说明:可以通过参数-r删除用户的主目录及其文件,也可以不使用参数-r

8、网络通信命令

命令名:ifconfig
功能:查看IP地址等信息
格式:ifconfig

命令名:ping
功能:测试主机网路是否畅通
格式:ping [选项] 主机名或IP地址

选项及作用:

选项作用
-f极限检测
-v显示命令的执行过程
-q不显示命令的执行过程,只显示结果
9、其他常用命令

命令名:echo
功能:显示命令行中的字符串
格式:echo [选项] [字符串]

选项及作用:

选项作用
-n输出字符串后,光标不换行

命令名:more
功能:对文件内容或查询结果分屏显示
格式:more [选项] 文件名

选项及作用:

选项作用
-p清屏,不滚屏
-s把连续的空行压缩为一个空行
+n从第n行开始显示

命令名:less
功能:对文件内容或查询结果分屏显示
格式:less [选项] 文件名

命令名:man
功能:显示命令的格式和详细用法
格式:man 命令名
说明:该命令是一个非常实用的命令,他可以显示系统手册页中的内容,当你需要了解某个命令的详细信息和用法时,可以使用man命令来实现。

命令名:help
功能:专门用于显示内建命令的格式用法
格式:help 命令名

四、总结

以上是我分享给大家的43个Linux常用的命令。如果觉得还不错的话,就送我一个赞吧!如果本文对你有用的话,也欢迎收藏哦!

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐