分享

常用Linux命令及其作用(超详细,带演示)

 gearss 2021-12-08

文章目录


如果觉得本文对你有所帮助,那就点个赞、收藏一波吧~

1. 提前了解

如果文中部分涉及到的命令没有,可以参看7.3或按照linux的提示安装即可

1.1 终端命令格式

command [-options] [parameter]

  • command:命令名,相应功能的英文单词或单词的缩写

  • [-options]:选项,可用来对命令进行控制,也可以省略。这里是可以同时输入多个的,此时中间的**-**可以省略

    • image-20210811162933925

  • parameter:传给命令的参数,可以是 零个、一个或者多个

  • [] 代表可选,不过某些命令中参数是必须的,具体根据情况而定

1.2 --help

command --help

  • 显示command命令的帮助信息,如下显示出ls的帮助信息

  • image-20210810221916355

1.3 man command 查询使用手册

man command

  • 查询command命令的使用手册,

  • image-20210810222123794

1.4 小技巧

  • ctrl shift = 放大终端窗口的字体显示(注意不要使用小键盘)

  • ctrl - 缩小终端窗口的字体显示(注意不要使用小键盘)

  • tab 可以补全或列出可能出现的命令

1.5 在linux中命令终止方式

  • ctrl c :强制中断程序的执行。进程已经终止

  • ctrl d :表示EOF

  • ctrl z :任务暂停,但是任务并为结束。在进程中呈现挂起状态。

2.最常用的6个终端命令

命令汇总

序号命令作用对应英文
2.1ls查看当前文件夹下的内容list
2.2pwd查看当前所在的文件夹print wrok directory
2.3cd [目录名]进入文件夹change directory
2.4touch [文件名]如果文件不存在,新建文件touch
2.5mkdir [目录名]创建目录make directory
2.6rm [文件名]删除指定的文件或目录remove
2.7clear清空终端屏clear

可以通过英文方便记忆,2.3、2.4、2.5、2.6,命令中间有一个空格。下面依次介绍演示各个命令

2.1 ls 查看当前文件夹下的内容

image-20210810213843000

2.2 pwd 查看当前所在的文件夹

第一个/是根目录

image-20210810213901033

2.3 cd [目录名] 进入文件夹

注意在linux中是区分大小写的

image-20210810214702551

2.4 touch [文件名] 如果文件不存在,新建文件

桌面上是没有文件的,所以就新建了名为test的文件

image-20210810215547474

2.5 mkdir [目录名] 创建目录

新建一个名为test1的文件夹

image-20210810215824430

2.6 rm [文件名] 删除指定的文件名

删除文件test

image-20210810215920290

3. 文件和目录常用命令及其详解

命令汇总

序号命令作用
3.1ls查看目录内容
3.2cd [目录名]进入目录
3.3touch [文件名]创建文件
3.4mkdr [目录名]创建目录
3.5rm [文件名]删除文件或目录
3.6tree [目录名]以树状图列出文件目录结构
3.7cp [源文件] [目标文件]拷贝
3.8mv [源文件] [目标文件]移动文件
3.9cat [文件名]查看文件内容、创建文件、追加文件内容等功能
3.10more [文件名]分屏显示文件内容
3.11grep [word] [文件名]在文件名中搜索word
3.12>,>>重定向,请参照目录3.12
3.13A|B管道,将A命令的结果作为B命令的输入

下面依次详细介绍各个命令,注意以下命令选项选择常见的进行说明演示。

3.1 ls 查看目录内容

  • 在linux中文件或者目录最长可以有256个字符

    • .开头的问隐藏文件(这个在window中也是一样的),需要使用ls -a才能看见

    • .代表当前目录,..代表上级目录

  • ls中的常用选项

    • 命令选项含义
      ls -a显示指定目录下所有子目录与文件,包括隐藏文件
      ls -l以列表方式显示文件的详细信息,读写权限等
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qtRvNvhR-1628934326309)(C:\Users\13324\AppData\Roaming\Typora\typora-user-images\image-20210810225236918.png)]

  • 通配符的使用,快速定位文件

    • 注意这里的通配符不仅仅可以使用在ls中,在很多地方都可以使用比如rm等等

    • 通配符含义
      *代表任意字符
      代表任意一个字符
      []匹配中括号中的任意一个字符
      [a-z]使用-表示范围,表示a到z范围的任意一个字符
    • image-20210811155533570

3.2 cd [目录名],进入目录

  • 注意在linux中目录和文件名需要严格区分大小写

  • 命令含义
    cd (与cd ~等同)切换到当前用户的主目录
    cd .保持在当前目录不变
    cd …切换到上级目录
    cd -可以在最近两次工作目录之间来回切换
    cd [目录名]进入 【目录名】中的目录
    • 在演示中的pwd命令含义为 查看当前所在的文件夹

    • image-20210811155718744

3.3 touch [文件名] 创建文件

  • 如果文件不存在则创建

    • 存在则修改文件最后操作时间

    • image-20210811161739445

3.4 mkdir [目录名] 创建目录

  • 新建一个目录

    • 命令选项含义
      mkdir -p可以递归创建目录。可以直接创建多级目录非常方便
    • 注意:新建目录不能与已经存在的文件(这里的文件是指不带有扩展名的文件)或目录重名

    • image-20210811162316151

3.5 rm [文件名],删除文件或目录

  • 注意:使用rm命令会直接从磁盘中删除文件。不会放入回收站中

  • 注意:rm不能直接删除目录

  • 这里可以使用通配符,如:rm *.txt

  • 命令选项含义
    rm -f [文件名]强制删除,如果该文件直接删除,没有也不提示
    rm -r [文件名]递归删除,合理的删除方式,删除文件夹必须如此
    • image-20210811163952304

3.6 tree [目录名], 以树状图列出文件目录结构

  • 这个命令可以很直观的显示出目录结构来

    • image-20210811171500665

3.7 cp [源文件] [目标文件],复制文件

  • 命令选项含义
    cp -i [源文件] [目标文件]覆盖文件前提示
    cp -r [源文件] [目标文件]递归复制文件夹,其中[源文件]必须是一个目录名
  • 注意文件夹不能直接复制,必须使用cp -rrm -r有类似之处

  • 将桌面上的111.txt复制到桌面的test/tes文件中

    • image-20210811172207214

3.8 mv [源文件] [目标文件],移动文件

  • 命令选项含义
    mv -i [源文件] [目标文件]移动文件或目录,若存在则覆盖文件前提示
    • 注意:在移动过程中可以重命名。如下,将桌面上的111.txt重命名为112.txtimage-20210811213509428

    • 将文件112.txt移动到test/tes中。若改为test/tes/111.txt则会在移动的同时进行重命名image-20210811213743877

3.9 cat [文件名],查看文件内容、创建文件、追加文件内容等功能

  • cat会一次显示所有的内容,适合查看内容较少的文本文件,与之对应more适合查看较多内容的文本文件

  • 查看文件内容

    • 命令选项含义
      cat -b对非空输出行编号
      cat -n对输出的所有行编号
    • image-20210811215438146

  • 创建文件

    • 回车 + ctrl c (介绍:强制中断程序的执行。进程已经终止)

    • 回车 + ctrl d (推荐使用,介绍:表示EOF)

    • 回车 + ctrl z (介绍:任务暂停,但是任务并为结束。在进程中呈现挂起状态。)

    • image-20210811222001875

    • 命令选项含义
      cat > [文件名]创建新文件或者覆盖已经有文件
    • 更多相关的东西,请参照3.12 重定向

    • 注意输入完内容之后可以使用一下三种方式保存内容。

  • 追加文件内容

    • 注意:这里是**>>若为>**则是用1的内容覆盖2的内容

    • image-20210811222534503

    • 更多相关的东西,请参照3.12 重定向

    • 命令选项含义
      cat [文件名1]>>[文件名2]将文件名1的内容追加到2中

3.10 more [文件名] ,分屏显示文件内容

  • 适合显示较多的文本内容文件

  • image-20210811222846129

    • 操作命令含义
      空格显示下一页
      回车显示下一行
      b回滚一屏
      f前滚一屏
      q退出
      /word搜索 word 字符串

3.11 grep [word] [文件名],搜索文本文件内容

  • 命令选项含义
    grep -n [word] [文件名]显示匹配行及行号
    grep -v [word] [文件名]显示不包含匹配文本的所有行(相当于取反)
    grep -i [word] [文件名]忽略大小写
    • image-20210811223839101**

3.12 重定向>,>>

  • echo:在终端显示参数指定的文字。通常和重定向一起使用

  • 重定向

    • >:输出但是会覆盖原有内容

    • >>:追加到文件末尾

    • 在重定向符号前面可以选择各种各样的命令,并可以将其结果保存到文件中

    • image-20210811225820763

3.13 管道,A|B

  • 管道,A|B,将A命令的结果作为B命令的输入

    • 下面讲s -alh //为根目录)的输出结果作为grep的输入,并在其中查找含有b的字符

    • image-20210811230858287

4. 远程管理常用命令

命令汇总

序号命令作用
4.1shutdown [选项] [时间]在某个时间点关机/重启
4.2ifconfig查看计算机当前的网卡配置信息,很常用
4.3ping ip地址检测到目标 ip地址 的连接是否正常,很常用
4.4ssh远程控制
4.5scp远程拷贝文件(如果在windows中更推荐使用软件WinSCP、FTP等软件)

下面依次详细介绍各个命令,注意以下命令选项选择常见的进行说明演示。

4.1 shutdown [选项] [时间],在某个时间点关机/重启

  • 这个命令需要root权限

  • shutdown:立刻一分钟之后

  • shutdown now:立刻关机

    • shutdown 11:20:11:20关机

    • shutdown +20:20分钟之后关机

  • shutdown -r now:立刻重新启动,在操作服务器的时候,一般都使用重启

  • shutdown -c:取消之前的关机/重启计划

4.2 ifconfig,查看计算机当前的网卡配置信息

  • 命令选项作用
    ifconfig查看网卡配置信息
    ifconfig | grep inet通过管道连用,查看网卡对应的 IP 地址
    • image-20210812142447007

4.3 ping ip地址, 检测到目标 ip地址 的连接是否正常

  • 通过这个命令来查看,是否与目标网络连通

    • image-20210812143941965

4.4 ssh的安装和使用,远程控制

  • 一般而言,在linux和mac中ssh都会默认安装,但是windows中没有需要单独下载xshell(现在要money了)、Putty等客户端。

    • 如果非要修改ssh端口只需使用vi /etc/ssh/sshd_config讲前面的#去掉,把port后的22改成需要的端口即可,注意防火墙该端口是否放开。此外也可以通过cat /etc/ssh/sshd_config查看ssh的端口。

    • image-20210812154759957

    • 但是某些linux或mac中也没有,需要自己下载

    • ps -e | grep ssh #查看linux中是ssh是否启动rpm -qa |grep ssh #查看linux中是否安装了sshapt install ssh #如果没有则安装(ssh默认端口22,一般不作修改)service sshd start #安装完成之后启动服务
    • 命令选项作用
      ssh 用户名@ip端口默认22
      ssh [-p 端口] 用户名@ip如果端口非22,则需要使用-p并输入相应的端口
    • 如下连接建立之后 输入密码即可登入,使用exit退出

    • image-20210812155637650

4.5 scp,远程拷贝文件

  • 是一个在linux下用来远程拷贝文件的命令。

  • 如果是从windows到linux中,那么更推荐使用WinSCP、FTP等软件,而非命令

  • 命令选项作用
    scp [-P 端口] [源文件] 用户名@ip地址:[目标地址]将[源文件]拷贝至目标主机的[目标地址]中,注意如果端口为22则-P 端口可以省略。另外P大写
    scp -r [-P 端口] [源文件] 用户名@ip地址:[目标地址]拷贝文件夹。相比其他多加了-r

5. 用户、权限相关命令

命令汇总

序号命令作用
5.1chmod [+/-rwx] [文件名|目录名]可以修改 用户/组文件/目录 的权限
5.2sudo获取root权限
5.3groupadd [组名],groupdel [组名]添加组,删除组
5.4chgrp -R [组名] [文件/目录名]递归修改文件/目录的所属组
5.5useradd -m -g [组] [新建用户名]新建用户, -m自动建立家目录;-g指定所在组,否则自动新建一个同名组,注意和5.6连用
5.6passwd [用户名]设置用户密码
5.7userdel -r [用户名]删除用户,-r会自动删除用户家目录
5.8查看用户信息,修改用户组查看用户信息
5.9su [用户名]切换用户
5.10chown [用户名] [文件名|目录名]修改文件拥有者,这个命令一般而言用的不多

下面依次详细介绍各个命令,注意以下命令选项选择常见的进行说明演示。

5.1 chmod [+/-rwx] [文件名|目录名], 修改文件权限

  • 在linux中r、w、x分别代表可读、可写、可执行

    • image-20210814152217932

  • 这种方式会一次性修改拥有者/组的权限

    • image-20210813155112941

  • 在日常使用中chmod更多的是使用数字来设置权限

    • 表示拥有者rwx

    • 拥有组rx

    • 其他用户rw

    • 例如:chmod -R 756 [文件名|目录名] (这里加上了-R递归符号)

    • image-20210814152127049

5.2 sudo,获取超级用户权限

  • 在大多数的linux发行版中,都不推荐直接使用root账号登录系统

    • 一般使用 sudo + 命令的方式,暂时(5分钟)获取root权限

  • 某些情况如果需要一直使用root权限可以使用sudo su来达到直接使用root账号登录系统的结果

5.3 groupadd [组名],groupdel [组名], 添加删除组

  • 在使用该命令时必须拥有root权限

    • 可以使用sudo +命令的方式暂时获取root权限

    • 命令执行完成之后通过cat /etc/group来查看执行结果

    • image-20210813161842366

    • 删除与添加的方式一样

5.4 chgrp -R [组名] [文件/目录名], 递归修改文件/目录的所属组

  • - R:该选项可以递归的修改目录中的子目录

  • 将桌面上的111.txt所属组,修改到新创建testUser组中

    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JbXJikKg-1628934326325)(C:\Users\13324\AppData\Roaming\Typora\typora-user-images\image-20210813164019281.png)]

5.5 useradd -m -g [组] [新建用户名], 新建用户

  • 该命令可以达到新建用户的目的

    • 其中-m :自动建立家目录,建议带上

    • -g:指定用户所在的组,否则会建立一个同名组

  • 一般该命令使用完,创建新用户之后紧接着就设置密码,否则安全性难以保证

    • passwd [用户名]:使用该命令达到设置密码的目的

  • 演示中前面都带有sudo是为了获取root权限,如果在root权限下,则不用带

    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xTbNvGn6-1628934326325)(C:\Users\13324\AppData\Roaming\Typora\typora-user-images\image-20210813170248361.png)]

  • 新建的用户信息可以使用cat /etc/passwd查看

    • image-20210813171054374

5.6 passwd [用户名],修改用户密码

  • 参照5.5中的演示

5.7 userdel -r [用户名], 删除用户

  • -r 选项会自动删除用户家目录,建议带上

    • image-20210813171436044

5.8 查看用户信息,修改用户组

  • 命令选项含义
    id [用户名]查看 UID(用户ID) 和 GID(组ID) 信息
    who查看当前所有登录的用户列表
    whoami查看当前登录用户的账户名
    • 每个用户信息由6个分号分隔开,共有7个信息分别为

    • 文件/etc/passwd含义解释

    • image-20210813172807538

    1. 用户名

    2. 密码(x,表示加密的密码)

    3. UID (用户标识)

    4. GID(主组标识)

    5. 用户名全称(若没有,则同名)

    6. 家目录

    7. 登录使用的Shell(可以理解为命令终端的风格,下面会介绍响应信息)

  • 关于主组与附加组

    • 默认情况下新建用户时加入的组,为用户的主组。其他为附加组

    • 主组标识,GID

    • 一般而言一个用户可以同时属于多个不同的组

    • 命令选项含义
      usermod -g [组] [用户名]修改用户的主组(passwd 中的 GID)
      usermod -G [组] [用户名]修改用户的附加组
      usermod -s /bin/bash [用户名]修改用户登录 Shell,一般不会使用。修改时候需要重新启动。可以更改命令终端的风格(bash看起来更加人性化,是ourne Shell的增强版本)
    • 用户的具体组情况可以使用cat /etc/group查看当然一般为了方便都会加上管道|和grep的用法

    • 给lisi添加附加组lxd

    • image-20210813230746695

    • 修改lisi的Shell(新建用户默认的Shell:/bin/sh)

    • image-20210813233713008

5.9 su [用户名]

  • 使用命令su [用户名]:可以切换用户

    • sudo susu等都可以进入root用户

  • 使用命令su - [用户名]:切换用户并切换目录至该用户的家目录

  • 使用命令exit退出该用户

5.10 chown [用户名] [文件名|目录名],修改文件拥有者

  • 具体的时候方法与5.4 chgrp命令类似

6. 系统信息相关命令

命令汇总

序号命令作用
6.1date查看系统时间
6.2cal查看日历
6.3df显示磁盘剩余空间
6.4ps查看当前进程的详细状况
6.5top动态显示运行中的进程并且排序
6.6kill [进程代号]终止指定代号的进程

下面依次详细介绍各个命令,注意以下命令选项选择常见的进行说明演示。

6.1 date,查看系统时间

  • image-20210814153728587

6.2 cal,查看日历

  • 命令选项含义
    cal查看到当月的日历
    cal -y查看到当年的日历情况
  • image-20210814153901056

6.3 df,显示磁盘剩余空间

  • 命令选项含义
    df显示磁盘剩余空间(单位字节)
    df -h显示磁盘剩余空间(单位自适应),更符合一般人的查看方式
    df -h [目录名]显示该目录下的文件大小
    • image-20210814154133526

6.4 ps ,查看进程的详细状况

  • 命令选项含义
    ps显示当前用户通过终端启动的应用程序
    ps a显示终端上的所有进程,包括其他用户的进程
    ps u显示进程的详细状态
    ps x显示没有控制终端的进程
    • 注意和其他命令一样命令可以叠加,比如ps ax

    • image-20210814155623446

6.5 top,动态显示运行中的进程并且排序

  • 与windows中任务管理器中的进程差不多,一旦运行就会动态的显示

    • 如果需要退出按q

  • image-20210814160056889

    • image-20210814160118372

6.6 kill [进程代号],终止指定代号的进程

  • 进程代号需要使用ps命令查看

    • 如果不能直接杀死该进程则使用kll -p [PID]强制结束进程

    • 这里为了演示打开了两个终端,其中PID4213是新开的终端

    • image-20210814160959122

7. 查找、打包、软件安装等命令

命令汇总

序号命令含义
7.1find [路径] -name “[查找内容]”在该路径下查找文件
7.2tar和gzip打包/解包。压缩/解压
7.3apt安装软件

下面依次详细介绍各个命令,注意以下命令选项选择常见的进行说明演示。

7.1 find [路径] -name “[查找内容]”,在该路径下查找文件

  • 如果不输入路径则是在当前路径下查找

    • 查找内容中可以包括通配符(通配符的相关信息请参看3.1)

    • image-20210814162328300

7.2 tar和gzip,打包/解包。压缩/解压

  • 在linux中tar是很常用的备份工具,可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件

    • 除开gzip之外还有bzip2也能起到同样的效果,只需要把-z和扩展名.gz改为-j.bz2即可

    • 注意打包不是压缩

    • 配合gzip才能起到压缩/解压的效果

    • 在linux中扩展名为.tar一般为打包文件,.tar.gz为打包后的压缩文件

    • 如果只需要打包解包则命令选项为-cvf-xvf加上z之后就变成了相应的压缩和解压缩

  • 命令选项含义
    tar -zcvf [打包压缩文件名.tar.gz] [被打包压缩的文件/路径]打包压缩文件,文件和路径可以添加多个,以空格隔开即可
    tar -zxvf [解包解压文件名.tar.gz] -C [指定解压路径]解包解压缩文件,如果不加-C则默认当前路径下
    • image-20210814170606997

    • image-20210814172229848

7.3 apt,安装软件

  • 注意在使用改命令时需要取得root权限,或者在命令前添加sudo

    • 在使用某命令时,如果系统没有,则会自动提示安装。一般而言照着操作即可。

  • 命令选项含义
    apt install [软件包]安装软件
    apt remove [软件包]卸载软件
    apt upgrade更新已安装的包
    • 下面演示安装htop的例子(进程显示软件)

    • image-20210814173916131

    • image-20210814173952737 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多