Linux常用命令(附实际案例及巩固练习)

作者永不落的梦想

作者主页传送

座右铭过去属于死神,未来属于自己

本文专栏Liunx篇

今日鸡汤只有极致的拼搏,才能配得上极致的风景

目录

前言

一、指令与选项

二、基础指令

1.ls指令  

2.pwd指令

3.cd指令

4.mkdir指令

5.touch指令

6.cp指令

7.mv指令

8.rm指令

9.vim指令

10.cat指令

11.输出重定向指令

 三、进阶指令(重点)

1.df指令

2.free指令

3.head指令

4.tail指令

5.less指令

6.wc指令

7.date指令(重点)

8.cal指令

9.clear指令

10.管道(重点)

四、高级指令

1.hostname指令

2.id指令

3.whoami指令

4.ps指令(重点)

5.top指令

6.du指令

7.find指令

8.service指令(重点)

9.kill指令(重点)

10.ifconfig指令(重点)

11.reboot指令

12.shutdown指令

13.uptime指令

14.uname指令

15.netstat指令

16.man指令

五、练习题

问题

练习题答案


前言

        Linux系统的使用对于计算机方面学习者是必不可少的,Linux系统与Windows不同,Linux的操作都需要使用命令完成,因此掌握Linux的指令是学好Linux系统的基础。这篇文章讲述了Linux的一些常用指令,每个指令都有对应的作用和语法说明,同时附加了各指令在Linux kali上的实际案例演示理论与实践的结合时读者更加容易、更加高效地掌握Linux常用指令,文章末还有指令练习以巩固所学。

一、指令与选项

指令:指在Linux终端输入的内容

指令格式:指令主体 [选项] [操作对象],一个指令可包含多个选项和操作对象

二、基础指令

1.ls指令  

作用:列出某个目录下的所有文件和文件夹的名称

语法1:ls                                     //列出当前目录下的所有文件和文件夹的名称

93a4584afcca4957bf457b4165b95b4f.png

语法2:ls 路径                         //列出指定目录下的所有文件和文件夹的名称,路径有绝对路径(完整的路径)和相对路径(../表示上一级目录,./表示当前目录,/表示根目录,~表示当前用户家目录)

6314c3ac06074fdfaf3a5f87a683b7d6.png

语法3:ls -lah 路径                     //以特定格式列出指定目录下的所有文件和文件夹的名称,-l表示以详细列表的形式显示,-a表示显示所有文件和文件夹(包括隐藏的文件和文件夹,隐藏文档名称以” . ”开头,-h表示显示文档大小时以可读性较高的形式显示,三个选项可组合或单独使用)

7c375aad4d994075b2b9eb45c6ff2f06.png

2.pwd指令

作用:输出当前所处的目录

语法:pwd                           //输出当前目录

39c6ff40f16d4405bf21dcdeb29636ff.png

3.cd指令

作用:切换到指定目录

语法:cd 路径                                                     //切换到指定路径,路径可使用绝对路径或相对路径,直接cd不写路径时将默认切换到当前用户的家目录

4d2288ba50704c13a487808e70217cc8.png

4.mkdir指令

作用:创建目录(文件夹)

语法1:mkdir 文件夹路径                       //在指定目录下创建文件夹(蓝色表示文件夹,白色是文件)

f3b9decffb47445091a6409a120e9e88.png

语法2:mkdir -p 文件夹路径                           //-p表示递归创建目录(创建多级目录,即一次性在新建文件夹下再创建新文件夹)

1a2108764a3e4f7e8e00972aa2257e7c.png

语法3:mkdir 文件夹路径1 文件夹路径2 文件夹路径n                          //一次性创建多个文件夹(目录),可以1至n个

447e941962f5453c9c25b2b0338d90e8.png

5.touch指令

作用:创建文件

语法1:touch 文件路径                                 //在指定目录下创建文件

8bad19e98347487a900154872dcc2e55.png

语法2:touch 文件路径1 文件路径2 文件路径n        //一次性创建多个文件,1至n个

b74309f0ebc248fab2f55cab17ba3f34.png

6.cp指令

作用:复制文件或文件夹到指定目录下

语法1:cp 被复制的文件路径 复制到的文件路径     //将文件复制到指定目录下

742883cc794e44e09100e35e75c160e5.png

上图中,复制到的文件路径中的文件名1.txt一般省略(即原名复制),也可以该为其他文件名(即改名复制)

语法2:cp -r 被复制的文件夹路径 复制到的文件夹路径                                          //将文件夹复制到指定目录下,-r表示递归复制(即文件夹内的文件或文件夹也被一同复制)

f6691f856d3242629ae03838e45c7107.png

7.mv指令

作用:移动文件或文件夹到指定目录下(即剪切)

语法:mv 被移动的文件或文件夹路径 移动到的文件或文件夹路径                                  //可将文件或文件夹移动,文件夹移动不需要递归,移动时可以重命名文件或文件夹

e0725290e9774522b0fc2f5316d76570.png

上图中,将888.py文件移动到了a文件夹下并重命名为110.py,也可以用原名,若不移动文件或文件夹只需要重命名,可将文件或文件夹原地移动时重命名

8.rm指令

作用:移除文件或文件夹(删除)

语法1:rm -f 被删除的文件路径                        //-f表示强制删除文件,不会有删除提示,有的系统版本不加-f会提示是否确认删除

0539878abb7a4b879990463d745949ce.png

语法2:rm -r 被删除的文件夹路径                              //-r表示递归删除,删除文件夹需要加-r选项,删除文件夹时-r和-f可组合使用,删除多个有共同特性的文件或文件夹可使用通配符

ce1f2546c5064a82a285c6c927a43c6f.png

9.vim指令

作用:vim是一款文本编辑器(类似windows的记事本,但功能更加强大)

语法:vim 文件路径                                                   //打开指定文件,若文件不存在则新建该文件,退出文件需要按shift+;(即:键)后输入q最后回车

b9a5fbfedc4a41c291c356119d930aa0.png

vim功能强大,语法较多,更多语法后续将单独介绍(也可使用指令man vim查看其英文使用手册)

10.cat指令

作用:以只读的方式直接打开指定文件

语法1:cat 文件路径                                   //只读打开文件,不可编辑,无需像vim一样要退出文件

fbe7abf751e6475e95fccc957c7bdbbc.png

语法2:cat 文件路径1 文件路径2 文件路径n > 合并文件路径                                     //使用cat指令和输出重定向指令将多个文件合并为一个文件

a7ddef2f8cd143729eaa785e09663f22.png

11.输出重定向指令

作用:将一些指令输出在终端的内容输出到指定文件

语法1:有输出的指令 > 文件路径                        //覆盖输出,文件原来的内容将被覆盖(文件内容清空后在输出),若指定文件不存在则自动创建该文件

0f8e096c8cbc4286a1ae986bbdbb1cf2.png

语法2:有输出的指令 >> 文件路径                  //追加输出,在文件末尾输出内容,若指定文件不存在则自动创建该文件

acdeeb832cc348c6823559eb70d9a9f9.png

 三、进阶指令(重点)

1.df指令

作用:查看磁盘空间,服务器一般是Linux系统,存放了大量文件,需要定期查看磁盘空间,防止存储空间不足

语法:df -h                  //-h表示以较高可读性的方式查看,可不加-h直接df但可读性差,建议都加-h

9744c5964b214c19b712030f8d4d9edf.png

2.free指令

作用:查看内存使用情况

语法:free -m                       //-m表示以MB为单位显示数据,不加直接free以KB为单位,一般加-m

a95e548033c9422ba9208baee53ac781.png

3.head指令

作用:查看某个文件的前n行数据

语法:head -n 文件路径                                           //n表示行数,若未指定n大小,则默认n等于10

fa442fda06ae46938044ef17bd145c46.png

4.tail指令

作用1:查看某个文件的后n行数据

语法:tail -n 文件路径                                              //n表示行数,若未指定n大小,则默认n等于10

96d550cd1d8a42359796d12b5fe82a42.png

作用2:查看某个文件的动态变化,一般用于查看系统日志

语法:tail -f 文件路径                                                         //可查看文件的动态变化,注意不能用户手动编辑改变文件,否则看不到变化,可以用输出重定向指令改变文件可看到变化,这里不便演示

5.less指令

作用:以较少的内容输出的方式查看文件

语法:less 文件路径                         //按下辅助功能键可查看更多,如按空格可翻页,按上下键可切换上下行,按回车可切换下一行,主要用于大文件,这里不便演示

6.wc指令

作用:统计文件内容信息,包括行数、单词数和字节数三个信息

语法:wc -lwc 文件路径                                       //-l表示行数,-w表示单词数(并不只是英文单词,是以空格来判断的,不实用),-c表示字节数,三个选项可单独或组合使用,-l统计行数比较实用

011a975022544df59a86665a7e29c23e.png

7.date指令(重点)

作用:操作时间日期,操作包括读取和设置

语法1:date                                                     //读取当前时间,输出形式如下

f9298191ae95400aa933a8152b90be7b.png

语法2:date +%F                                                           //这是简写法,原语法:date “+%Y-%m-%d”,需要严格区分大小写,输出形式如下

7b4f6ca4fbb645b2a51f2f97ac0e4e02.png

语法3:date +%T                                                         //这是简写法,原语法:date “+%H-%M-%S”,需要严格区分大小写,输出形式如下

48e4bb2c27524d9f94c1f02ccedfaf15.png

语法4:date “+%F %T”                                  //读取当前时间,可用单引号,输出形式如下

98bd718aedd044f99c18f7ade9d05da3.png

语法5:date -d “时间戳” “时间格式”                      //读取以前或以后的时间,一般用于数据库备份方面,演示如下

3f2ad59d6cdd41159c70d6551c5ed566.png

date指令语法较多,以上是比较重要的,其他可用date --help查看

8.cal指令

作用:操作日历

若显示找不到cal指令可以用以下命令安装

3eb705b737b04f50a7ad728bff6717a3.png

语法1:cal                                        //直接输出当前日历,原语法:cal -1,-1表示输出本月的日历

2c9a7ba2bcb44c9db712e3d88322412b.png

语法2:cal -3                                            //输出上月、本月、下月的日历

78a22f03b75848cab4f31267a94fabb4.png

语法3:cal -y 年份                                         //输出某一年的日历,窗口小未显示全部

181640f9aada4750a4b89e17a400a5eb.png

语法4:cal -m                            //日历由周一至周末输出,不指定-m则默认是-s由周末至周六输出

9.clear指令

作用:清除终端中的内容

语法:clear                    //清屏,并不改变数据内容,只是不在屏幕显示,可以用快捷键ctrl+L代替

c0a2a70060f84438aeb9570488164847.png

10.管道(重点)

管道符:   |                              //有个与”滚“同音的汉字和这个管道符长得一样,别写错了

语法:管道符不能单独使用,需配合其他指令使用,起辅助作用

作用1:用于过滤,一般配合grep指令使用(grep指令主要用于过滤),将管道符|前的输出内容经grep指令过滤后输出

babba316f50b4ebeafe26f736651b57b.png

作用2:用于特殊,如cat 文件路径 | less与less等效,不实用,不做演示

作用3,扩展处理,如输出某个目录下文件/文件夹数

0bb31dfac3764671adbbc6c5f2401179.png

四、高级指令

1.hostname指令

作用:操作主机名,操作包括读取和设置,设置主机名一般不用这个指令

语法1:hostname                                                //输出当前主机的完整主机名

f54d9160aa17408ca7ad79445813ffa6.png

语法2:hostname -f                                             //-f表示输出当前主机名的FQDN(全限定域名)

2b2c5b9073e34ff49a77c470782507da.png

2.id指令

作用:查看用户的基本信息,包括用户id、用户组id、附加组id信息等等

语法1:id                                                     //未指定用户,默认查看当前用户的基本信息

7331de55972a4e86a44b56e5ffde859b.png

语法2:id 用户名                                            //查看指定用户的基本信息

5eea5568bb2d400c81be6b5802b03dc8.png

3.whoami指令

作用:显示当前用户的用户名,可记忆为”who am i”,”我是谁”,一般用于shell脚本和日志

语法:whoami             //输出当前用户名

4.ps指令(重点)

作用:主要是查看服务器的进程信息

语法1:ps -fe                                //-e表示输出全部进程信息(部分列未输出),-f表示(输出所有列),-e和-f可单独使用或组合使用

81e7d077051f4e81a9af06eefdd5b3fe.png

上图中,UID表示执行该进程的用户ID,PID表示进程ID,PPID表示该进程的父级进程ID,C表示cpu的占用率(百分比形式),STIME表示进程的启动时间,TTY表示发起该进程的设备标识符(?号表示非终端设备),TIME表示进程的执行时长,CMD表示该进程的名称或对应的路径

语法2:ps -ef | grep 进程名                   //可查看指定进程信息,比较常用

854ae59c94da4af7ba4349e39395ceb3.png

上图中,只有一行数据输出为我们刚执行的进程,未查找到指定进程,若查找成功至少有两行数据

5.top指令

作用:查看服务器的进程占用的资源

语法:top                                    //top为进入指令,可实时查看进程占用资源的动态变化,按下q键可退出查看,按下M键可按内存占用比降幂排序,按下P键可按CPU占用比降幂排序,区分大小写

079d86d15b264b9ead043a5e2226ba9d.png

上图中,USER表示执行该进程的用户名,PID表示进程号,PR表示进程的优先级,VIRT表示虚拟内存(进程申请的总内存),RES表示常驻内存(进程占用的内存),SHR表示共享内存(调用其他进程的内存),进程实际占用的内存=RES-SHR,S表示进程状态(其中S表示睡眠状态,R表示运行状态),%CPU表示CPU的占用比,%MEM表示内存的占用比,TIME+表示进程的执行时长,CMOMAND表示进程的名称或路径

6.du指令

作用:查看目录的真实大小

语法:du -sh 目录路径                       //-s表示只显示汇总大小,-h表示以较高可读性的形式显示

2e2a3bfb334d4173a5455bcc4663b6f2.png

7.find指令

作用:用于查找文件(可查找隐藏文件)

语法1:find 路径范围 -name 文件名               //表示在路径范围内以文件名为基准搜索其位置,支持模糊搜索

fe410a966a904c0bb59364bb25486d2d.png

语法2:find 路径范围 -type 文件类型             //以文档类型为基准,文档类型有,“-”表示文件(搜索时用f代替),“d”表示文件夹

740b0b803ce8476e99021c2f82c1b980.png

Find指令的其他语法可用find --help查看

8.service指令(重点)

作用:用于控制一些软件的服务启动/停止/重启

语法:service 服务名称 start/stop/restart           //控制服务的启动/停止/重启,选一个不能同时用,这里不演示

9.kill指令(重点)

作用:用于杀死进程(当遇到僵尸进程或需要关闭某个进程时)

语法1:kill PID                   //PID是进程ID,使用ps指令可查看进程PID

语法2:killall 进程名称                //可以将其子进程一起杀死,这里不演示

10.ifconfig指令(重点)

作用:用于操作网卡相关的指令

语法:ifconfig               //获取网卡信息

1caeef479719460ab6e8040a2d96693f.png

11.reboot指令

作用:重启计算机

语法1:reboot                                     //重启计算机,这里不便演示

语法2:reboot -w                               //模拟重启,但是实际不重启,用于测试,可在日志中写入关机与开机的日志信息

12.shutdown指令

作用:用于关机(慎用,如远程控制非云服务器关机后就断开控制不能远程开机了)

语法1:shutdown -h now “关机提示”                 //立即关机,关机提示可有可无

语法2:shutdown -h HH:MM “关机提示”            //定时关机,如HH:MM为12:30

语法3:shutdown -c                                //终止关机,有的系统版本按下ctrl+c终止关机

c95702daa6f446bdbf5f8d98362c42fc.png

13.uptime指令

作用:输出计算机的持续在线时间

语法:uptime                          //输出从计算机开机至当前的时间

2f26371bc80a41bea68e8cf68a003cbb.png

上图中,up前的时间表示当前时间,up后1:43表示持续在线1小时43分钟

14.uname指令

作用:获取计算机操作系统的相关信息

语法1:uname                                //获取操作系统的类型

67a2a3fd1b0a438d9c4e2aeee710e774.png

语法2:uname -a                       //-a表示获取操作系统的全部信息(类型、主机名、内核版本、发布时间、开源计划)

589eed1ecc054729ab7d6e383e76ff4c.png

15.netstat指令

作用:查看网络连接状态

语法:netstat -tnlp                                     //-t表示只输出tcp协议的连接,-n表示将字符串地址转换为ip地址显示、将协议转换为端口号显示,-l表示只显示(过滤)出state列值为LISTEN(监听)的连接,-p表示显示连接对应的进程PID和进程名称,可组合或单独使用,一般四个组合用

16.man指令

作用:查看Linux中指令的英文手册

语法:man 指令                          //查看对应指令的英文手册,按q键退出,如man cp查看cp指令的手册,若不会使用man指令,可以man man查看man的手册,这里不演示

五、练习题

问题

1.如何通过命令行重启Linux系统?     reboot

2.如何在命令行快速删除光标前/后的内容?     

3.如何删除/tmp下的所有A开头的文件?       

4.如何把/etc/passwd备份到/tmp下?        

5.如何查看系统最后创建的三个用户?     

6.如何统计当前系统有多少用户?      

7.如何创建/tmp/1.txt文件?      

8.如何vim编辑打开/tmp/1.txt文件?       

9.如何查看/tmp/1.txt文件的前三行/尾三行?   

10.如何一次性创建目录/tmp/a/b/c?     

11.如何快速切换到当前用户的家目录?    

12.如何查看/etc所占的磁盘空间?      

13.如何删除/tmp下的所有文件?      

14.启动Apache服务并检查是否启动成功?   

15.如何杀死Apache进程?      

练习题答案

问题1:reboot

问题2:前:ctrl+u   后:ctrl+k

问题3:rm -f /tmp/A*

问题4:cp /etc/passwd /tmp/passwd

问题5:tail -3 /etc/passwd

问题6:wc -l /etc/passwd

问题7:touch /tmp/1.txt

问题9:head -3 /tmp/1.txt   tail -3 /tmp/1.txt

问题10:mkdir -p /tmp/a/b/c

问题11:cd ~  或  cd

问题12:du -sh /etc

问题13:rm -rf /tmp/*

问题14:service httpd start        ps -ef | grep httpd

问题15:killall httpd

  • 22
    点赞
  • 88
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值