第六章 Linux实际操作——实用指令
- 6.1 指定运行级别
- 6.2 找回root密码
- 6.3 帮助指令
- 6.3.1 man获得帮助信息
- 6.3.2 help指令
- 6.3.3 搜索引擎帮助更直接
- 6.4 文件目录类
- 6.4.1 pwd指令
- 6.4.2 ls指令
- 6.4.3 cd指令
- 6.4.4 mkdir 指令
- 6.4.5rmdir指令删除空目录
- 6.4.6 touch 指令
- 6.4.7 cp 指令
- 6.4.8 rm指令
- 6.4.9 mv指令
- 6.4.10 cat指令cat查看文件内容
- 6.4.11 more指令
- 6.4.12 less指令
- 6.4.13 echo指令echo输出内容到控制台
- 6.4.14 head指令
- 6.4.15 tail 指令
- 6.4.16 >指令和>>指令
- 6.4.17 ln指令
- 6.4.18history指令
- 6.5 时间日期类
- 6.5.1 date指令-显示当前日期
- 6.5.2date指令-设置日期
- 6.5.3cal指令
- 6.6 搜索查找类
- 6.6.1 find指令
- 6.6.2 locate指令
- 6.6.3 grep指令和管道符号│
- 6.7 压缩和解压类
- 6.7.1 gzip/gunzip 指令
- 6.7.2zip/unzip 指令
- 6.7.3tar指令
6.1 指定运行级别
运行级别说明:
- 0 :关机
- 1:单用户【找回丢失密码】
- 2:多用户状态没有网络服务
- 3:多用户状态有网络服务
- 4:系统未使用保留给用户
- 5:图形界面
- 6:系统重启
常用3和5,也可以指定默认运行级别
6.2 找回root密码
待更新
6.3 帮助指令
6.3.1 man获得帮助信息
- 基本语法:
- man [命令或配置文件] (功能描述:获得帮助信息)
- 案例:查看ls命令的帮助信息
man ls
- 在linux下,隐藏文件是以.开头,选项可以组合使用比如 ls -al,比如
ls-al /root
6.3.2 help指令
- 基本语法: help命令(功能描述:获得shell 内置命令的帮助信息)
6.3.3 搜索引擎帮助更直接
如果英语不太好的,也可以直接用搜索引擎。
6.4 文件目录类
6.4.1 pwd指令
- 基本语法: pwd(功能描述:显示当前工作目录的绝对路径)应用实例:案例:显示当前工作目录的绝对路径
6.4.2 ls指令
-
基本语法:
-
ls [ 选项 ] [ 目录或是文件 ] 常用选项
-a :显示当前目录所有的文件和目录,包括隐藏的。
-l:以列表的方式显示信息 应用实例 -
案例:查看当前目录的所有内容信息
ls
6.4.3 cd指令
- 基本语法:
cd [参数] ( 功能描述:切换到指定目录 ) - cd~ 或者cd :回到家目录, 比如是root , 到/root
cd~
- 回到当前目录的上一级目录
cd ..
应用实例
- 案例1:使用绝对路径切换到root目录,
cd /root`
- 案例2:、使用相对路径到/root目录,比如在/home/tom
cd ..l../root
- 案例3:表示回到当前目录的上一级目录
cd ..
- 案例4:回到家目录
cd~
6.4.4 mkdir 指令
-
mkdir指令用于创建目录
-
基本语法:
-mkdir [选项] 要创建的目录 -
常用选项
-P :创建多级目录应用实例
案例1:创建一个目录/home/dog
mkdir /home/dog
案例2:创建多级目录/home/animal/tiger
mkdir -p /homelanimal/tiger
6.4.5rmdir指令删除空目录
- 基本语法
rmdir [选项] 要删除的空目录 - 应用实例
例:删除一个目录/home/dog - 使用细节
rmdir删除的是空目录,如果目录下有内容时无法删除的。
提示:如果需要删除非空目录,需要使用rm -rf要删除的目录
比如:
rm -rf /homelanimal
6.4.6 touch 指令
- touch指令 创建空文件
- 基本语法 touch文件名称
- 应用实例
例:在/home目录下,创建一个空文件hello.txt
touch hello.txt
6.4.7 cp 指令
cp 指令拷贝文件到指定目录
- 基本语法
cp [选项] source dest - 常用选项
- -r :递归复制整个文件夹应用实例
例1:将/home/hello.txt拷贝到/home/bbb_目录下
cp hello.txt /home/bbb
例2:递归复制整个文件夹,举例,比如将/home/bbb整个目录,拷贝到/opt
cp -r /home/bbb/opt
- 使用细节
强制覆盖不提示的方法: \cp ,
\cp -r /home/bbb/opt
6.4.8 rm指令
- 说明:rm指令移除文件或目录
- 基本语法
rm [选项] 要删除的文件或目录 - 常用选项
- -r :递归删除整个文件夹
- -f :强制删除不提示
- 应用实例
- 案例1:将/home/hello.txt删除,
rm /home/hello.txt
- 案例2:递归删除整个文件夹/home/bbb,
rm -rf /home/bbb[删除整个文件夹,不提示]
- 使用细节 强制删除不提示的方法:带上 -f参数即可
6.4.9 mv指令
- mv移动文件与目录或重命名基本语法
功能描述:重命名
mv oldNameFile newNameFile
功能描述:移动文件
mv /temp/movefile /targetFolder
- 应用实例
- 案例1:将/home/cat.txt文件重新命名为pig.txt
- 案例2:将/home/pig.txt文件移动到/root目录下
- 案例3:移动整个目录,比如将/opt/bbb移动到/home 下mv lopt/bbb /homel试试.
6.4.10 cat指令cat查看文件内容
- 基本语法
- cat[选项]要查看的文件
- 常用选项
- -n :显示行号
- 应用实例
- 案例1:letc/profile文件内容,并显示行号
- 使用细节
- cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上管道命令| more
cat-n letc/profile | more [进行交互]
6.4.11 more指令
- more 指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键(交互的指令),详见操作说明
- 基本语法
more 要查看的文件
操作说明,如图
- 应用实例
- 例:采用more查看文件 /etc/profile
more /etc/profile
6.4.12 less指令
- less指令用来分屏查看文件内容,它的功能与more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
- 基本语法
- less 要查看的文件
- 操作说明
- 应用实例 案例:采用less查看一个大文件文件 lopt/杂文.txt
less /opt/杂文.txt
6.4.13 echo指令echo输出内容到控制台
- 基本语法
- echo [选项] [ 输出内容 ]
- 应用实例
- 案例:使用echo 指令输出环境变量,比如输出$PATH $HOSTNAME,
echo $HOSTNAME
- 案例:使用echo指令输出 hello,world!
6.4.14 head指令
- head 用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
- 基本语法
- 功能描述:查看文件头10行内容
head 文件
- 功能描述:查看文件头5行内容,5可以是任意行数
head -n 5 文件
- 应用实例
案例:查看/etc/profile 的前面5行代码
head -n 5 letc/profile
6.4.15 tail 指令
- tail用于输出文件中尾部的内容,默认情况下tail 指令显示文件的前10行内容。
- 基本语法
-
- tail 文件 (功能描述:查看文件尾10行内容)
-
- tail -n 5 文件 (功能描述:查看文件尾5行内容,5可以是任意行数>
-
- tail -f 文件 (功能描述:实时追踪该文档的所有更新)
- 应用实例
- 案例1:查看/etc/profile最后5行的代码
tail -n 5 /etc/profile
- 案例2:实时监控 mydate.txt,看看到文件有变化时,是否看到,实时的追加hello,world
tail -f /home/mydate.txt
6.4.16 >指令和>>指令
右尖括号 > 输出重定向 和 >>追加
- 基本语法
-
- ls -l>文件 (功能描述:列表的内容写入文件a.txt中(覆盖写))
-
- ls -al>>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
-
- cat 文件1 > 文件2( 功能描述:将文件1的内容覆盖到文件2)
-
- echo “内容”>> 文件 (追加)
- 应用实例
- 案例1:将/home目录下的文件列表写入到/home/info.txt中,覆盖写入
ls -l /home > /home/info.txt [如果info.txt没有,则会创建]
- 案例2:将当前日历信息追加到 /home/mycal 文件中
cal >> /home/mycal
6.4.17 ln指令
- 软链接也称为符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径
- 基本语法
- ln -s [原文件或目录] [ 软链接名 ]
(功能描述:给原文件创建一个软链接) - 应用实例
- 案例1:在/home目录下创建一个软连接myroot,连接到/root目录
ln -s/root /home/myroot
- 案例2:删除软连接myroot
rm /home/myroot
- 细节说明 当我们使用pwd 指令查看目录时,仍然看到的是软链接所在目录。
6.4.18history指令
- 查看已经执行过历史命令,也可以执行历史指令
- 基本语法
- history (功能描述:查看已经执行过历史命令)
- 应用实例
- 案例1:显示所有的历史命令
history
- 案例2:显示最近使用过的10个指令。
history 10
- 案例3:执行历史编号为5的指令
!5
6.5 时间日期类
6.5.1 date指令-显示当前日期
-
基本语法
-
- date (功能描述:显示当前时间>
-
- date +%Y(功能描述;显示当前年份)
-
- date +%m(功能描述:显示当前月份)
4)date +%d(功能描述:显示当前是哪一天) - date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)
- date +%m(功能描述:显示当前月份)
-
应用实例
-
案例1:显示当前时间信息
date
- 案例2:显示当前时间年月日
date "+%Y-%m-%d"
- 案例3:显示当前时间年月日时分秒
- date “+%Y-%m-%d %H:%M:%S”
6.5.2date指令-设置日期
- 基本语法
- date -s 字符串时间
- 应用实例
- 案例1:设置系统当前时间﹐比如设置成2020-11-0320:02:10
date -s "2020-11-03 20:02:10”
6.5.3cal指令
- 查看日历指令cal
- 基本语法 cal [选项 ] (功能描述:不加选项,显示本月日历)
- 应用实例
- 案例1:显示当前日历
cal
- 案例2:显示2020年日历:
cal 2020
6.6 搜索查找类
6.6.1 find指令
- find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
- 基本语法
- find [ 搜索范围 ] [ 选项 ]
- 选项说明
- 应用实例
- 案例1:按文件名:根据名称查找/home目录下的hello.txt 文件
- find /home -name hello.txt
- 案例2:按拥有者:查找/opt目录下,用户名称为nobody 的文件
- find /opt -user nobody
- 案例3:查找整个linux系统下大于200M的文件(+n大于-n小于n等于,单位有k,M,G)
- find / -size +200M
6.6.2 locate指令
- locate 指令可以快速定位文件路径。
- locate 指令利用事先建立的系统中所有文件名称及路径的 locate数据库实现快速定位给定的文件。
- Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻
- 基本语法
- locate搜索文件
- 特别说明
- 由于locate 指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
- 应用实例
- 案例1:请使用locate指令快速定位hello.txt文件所在目录
- which 指令,可以查看某个指令在哪个目录下,比如
ls指令在哪个目录
which ls
6.6.3 grep指令和管道符号│
-
grep过滤查找,管道符“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
-
基本语法
-
grep [选项] 查找内容 源文件
-
常用选项
-
应用实例
-
案例1:请在 hello.txt 文件中,查找"yes”所在行,并且显示行号
-
写法1: cat /home/hello.txt lgrep"yes"
写法2: grep -n “yes” /home/hello.txt
6.7 压缩和解压类
6.7.1 gzip/gunzip 指令
- gzip 用于压缩文件, gunzip用于解压的
- 基本语法
- gzip文件(功能描述:压缩文件,只能将文件压缩为*.gz文件)
- gunzip 文件.gz(功能描述:解压缩文件命令)
- 应用实例
- 案例1:gzip压缩,将/home下的 hello.txt文件进行压缩
- gzip /home/hello.txt
- 案例2: gunzip压缩,将/home下的 hello.txt.gz文件进行解压缩
- gunzip /home/hello.txt.gz
6.7.2zip/unzip 指令
- zip 用于压缩文件,unzip 用于解压的,这个在项目打包发布中很有用的
- 基本语法
- zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令
- unzip[选项]XXX.zip (功能描述:解压缩文件)
- zip常用选项
- -r:递归压缩,即压缩目录
- unzip的常用选项
- -d<目录>:指定解压后文件的存放目录
- 应用实例
- 案例1:将/home下的所有文件/文件夹进行压缩成myhome.zip
- zip -r myhome.zip /home/ [将home目录及其包含的文件和子文件夹都压缩]
- 案例2:将myhome.zip解压到/opt/tmp目录下
- mkdir /opt/tmp
- unzip -d /opt/tmp /home/myhome.zip
6.7.3tar指令
- tar指令是打包指令,最后打包后的文件是.tar.gz 的文件。
- 基本语法
- tar [选项] XXX.tar.gz打包的内容 (功能描述:打包目录,压缩后的文件格式.targz)
- 选项说明
- 应用实例
- 案例1:压缩多个文件,将/home/pig.txt和/home/cat.txt压缩成pc.tar. gz
- tar -zcvf pc.tar.gz/home/pig.txt /home/cat.txt
- 案例2:妳将/home 的文件夹压缩成myhome.tar.gz
- tar -zcvf myhome.tar.gz./home/
- 案例3:将pc.tar.gz解压到当前目录tar -zxvf pc.tar.gz 案例4:将myhome.tar .gz解压到/optmp2目录下
- (1) mkdir lopthtmp2
- (2) tar -zxvf /home/myhome.tar.gz-C lopt/tmp2