Linux实操篇-实用指令
Posted nuist__NJUPT
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux实操篇-实用指令相关的知识,希望对你有一定的参考价值。
Linux实操篇-实用指令
Linux系统的7个运行级别如下图所示,可以切换到指定运行级别。
一、切换到指定运行级别的指令
语法:init 级别数
例如:使用命令init 3
切换到级别3,使用命令init 5
切换回级别5,使用命令init 0
关机。
如何找回root密码?如果忘记了root密码,怎么找回呢?
思路:进入到单用户模式,然后修改密码就可以了。进入单用户模式,root不需要密码就可以登录。
二、帮助指令
当我们对某个指令不熟悉的时候,我们可以通过Linux提供的帮助指令来了解不熟悉指令的使用方法。
语法1:man 命令或配置文件
语法2:help 命令或配置文件
三、文件目录类指令
指令pwd
:显示当前目录的绝对路径
指令 ls
:查看当前目录的所有文件信息
指令ls -l
:以列表形式显示信息
指令ls -a
:显示当前目录的所有文件和目录,包括隐藏的
指令cd
:切换目录指令
指令cd ~
:直接回到家目录
思考:
当前工作目录是/root,我们希望进入到/home下。
绝对路径:/home
:即从根目录开始定位
相对路径:../home
:即从当前工作目录开始定位
例题:
1-使用绝对路径到/root的命令:cd /root/
2-使用相对路劲进入root目录,加入当前目录为二级目录/usr/lib
先用指令cd /usr/lib/
切换到二级目录/usr/lib下,然后使用指令pwd
查看当前目录,最后使用相对路径命令cd ../../root/
切换到root目录
3-使用指令cd ..
表示回到当前命令的上一级
4-使用指令cd
或者指令cd ~
切换到家目录
指令mkdir
用于创建单个目录,即make directory
例如:使用指令在home目录下创建dog目录mkdir /home/dog
指令mkdir -p
用于创建多个目录
例如:使用指令mkdir -p /home/animal/tiger
在home目录下创建animal和tiger目录
指令rmdir
用于删除空目录,如果该目录下有内容,则无法删除
例如:使用指令删除home目录下的dog目录
指令rm -rf
用于删除非空目录
例如:使用指令rm -rf /home/dog
删除home目录下的dog目录,且该dog目录非空
使用指令touch
创建空文件
例如:使用指令touch hello.txt
创建hello.txt文件
使用touch ok.txt ok1.txt
一次性创建多个文件ok.txt和ok1.txt
指令cp
用于拷贝文件到指定目录
例如:使用指令cp a.txt dir/
将文件当前目录的a.txt文件拷贝到当前目录的dir/目录下
指令cp -r
用于拷贝一个目录到另一个目录
例如:使用指令cp -r zhangsan/ zwj/
将目录zhangsan/拷贝到目录zwj/下面。
指令\\cp -r
用于拷贝一个目录到另一个目录,且强制覆盖
指令rm
用于移除文件或目录
例如:使用指令rm ok.txt
删除文件ok.txt,当然要输入再输入y确认删除。
删除文件或者目录,不希望有提示信息,则使用指令rm -rf
例如:使用指令rm -f ok1.txt
删除文件ok1.txt,使用指令rm -rf /home/animal
删除目录animal
使用mv
指令移动文件与目录或重命名
例如:使用指令mv a.txt b.txt
将当前目录下文件a.txt重命名为b.txt
例如:使用指令mv b.txt /root/
将/home/b.txt文件移动到/root目录下
指令cat -n
用于只读的方式查看文件内容,并显示行号,为了浏览方便,一般会带上管道命令|more
例如:使用命令cat -n /etc/profile |more
查看/etc/profile文件内容,并显示行号
指令more
是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more指令内置了若干快捷键。
指令less
用来分屏查看文件内容,它的功能与more
指令相似,但是相比more
指令更加强大,支持各种显示终端,less
指令在现实文件内容时,并不是一次将整个文件加载才显示,而是根据显示需要加载的内容,对于显示大型文件具有很高的效率。
按enter键是一行一行翻,空格键space是按页翻
输出重定向指令>
,会将原来的文件覆盖掉,追加指令>>
会在源文件尾部后追加。
例如:使用命令ls -l > a.txt
将ls -l 显示的内容覆盖写入文件a.txt,如果该文件不存在,就创建该文件
例如:使用命令ls -l >> a.txt
将ls -l 要显示的内容追加到a.txt文件中。
例如:使用命令cat a.txt > b.txt
将文件a.txt的内容覆盖到b.txt,如果b.txt不存在则自动创建b.txt
例如:使用命令echo "hello world" >> b.txt
将"hello world"追加到文件b.txt中的末尾,使用命令echo "hello world" > b.txt
将’'hello world"覆盖到文件b.txt中.
使用echo
指令将内容输出到控制台。
例如:使用指令echo $PATH
输出当前的环境路径
指令head
用于显示文件开头的部分,默认head指令显示文件的前10行内容。
例如:使用指令# head -n 5 /etc/profile
显示# /etc/profile文件的前五行内容,使用指令head /etc/profile
默认显示前10行内容
指令tail
用于显示文件尾部的部分,默认tail指令显示文件的后10行内容。
例如:使用指令tail -n 5 /etc/profile
显示文件 /etc/profile的后5行。使用指令tail /etc/profile
默认显示文件/etc/profile的后10行。
使用指令tail -f my.txt
实时监控文件my.txt的变化,如果有变化,会看到变化。
指令ln
用于软连接,也叫做符号连接,类似于windows里的快捷方式,主要存放连接其它文件的路径。
使用指令ln -s /root LinkToRoot
在/home目录下创建一个软链接linkToRoot,并链接到/root目录下。
使用指令rm -rf LinkToRoot
删除软链接LinkToRoot
指令history
用于查看执行过的历史命令,也可以执行历史指令
例如:使用history
指令显示所有执行过的历史指令,使用指令history 10
显示历史执行过的10条指令,使用指令!10
执行第10条执行过的指令。
四、时间日期类指令
指令date
用于显示当前日期
例如:使用指令date "+%Y %m %d"
显示当前的年月日,使用指令date "+%Y年 %m %d %H:%M:%S"
显示当前的年月日和时分秒,使用date -s 字符串时间
可以设置当前系统的时间。
指令cal
用于查看当前的日历信息,使用指令cal 2021
可以显示2021年的日历信息
五、搜索查找类指令
对于find
指令,它的作用是从指定根目录递归向下遍历各个子目录,将满足条件的文件或者目录显示在终端。
通过指令find /home -name hello.txt
实现按文件名,根据名称查找home目录下的hello.txt文件。
通过指令find /opt -user nobody
实现按拥有者,查找/opt目录下,用户名为nobody的文件。
通过指令find / -size +20M
查找Linux系统下大于20M的文件。
小于20M就是-20M,等于就是20M.
使用指令find / *.txt
查询以txt结尾的文件
对于locate
指令,它可以快速定位文件路径,locate指令利用事先建立的系统中所有文件名称及路径的locate数据库,实现快速定位给定的文件,locate指令无需遍历整个文件系统,查询速度较快,为了保证查询结果的准确度,管理员必须定期更新locate时刻。
由于locate指令基于数据库进行查询,所以第一次运行,必须使用updatedb
指令创建locate数据库
例如:使用指令locate hello.txt
查询文件hello.txt的位置信息
指令grep
用于过滤查找,管道符号|
用于将前一个命令的处理结果传递给后一个命令处理。
使用命令cat hello.txt | grep -n yes
查找yes在hello.txt文件中所在行,并显示行号,yes区分大小写
使用命令cat hello.txt | grep -ni yes
查找yes在hello.txt文件中所在行,并显示行号,yes不区分大小写
六、压缩及解压缩相关指令
指令gzip
用于压缩文件,指令gunzip
用于解压缩。
例如:使用指令gzip hello.txt
将/home下的hello.txt文件进行压缩,压缩后源文件直接变成压缩文件。
细节说明:当使用gzip进行压缩文件,不会保留原来的文件。
例如:使用gunzip hello.txt
指令可以将/home下的hello.txt文件解压。
比较常用的压缩文件指令是zip
,解压缩指令是unzip
例如:使用zip -r package.zip /home/
指令将/home目录下的所有文件递归压缩到package.zip中。使用指令unzip -d /opt/tmp/ package.zip
将package.zip解压到指定目录/opt/tmp/中。
指令tar
是打包指令,既可以实现压缩,又可以实现解压。最后的打包文件是.tar.gz结尾的。
例如:使用指令tar -zcvf a1.txt a2.txt a.tar.gz
将a1.txt和a2.txt压缩成文件a.tar.gz
例如:使用指令tar -zcvf myhome.tar.gz /home/
将/home目录下的所有文件进行打包成myhome.tar.gz
例如:使用指令tar -zxvf a.tar.gz
将a.tar.gz解压到当前目录
例如:使用指令tar -zxvf myhome.tar.gz -C /opt/
将myhome.tar.gz解压到/opt/目录下
使用该指令进行解压,解压的目录一定要存在,否则会报错。
以上是关于Linux实操篇-实用指令的主要内容,如果未能解决你的问题,请参考以下文章