常用的运行级别是3和5,也可以指定默认运行级别,下面有演示
大家可以自己试试 init 0-6
man 命令或配置文件
:获取帮助信息
例:man ls
help 命令
:获得shell内置命令的帮助信息
不过帮助信息都是英文,作为英文不好的初学者,这里强烈建议你直接百度
pwd
指令
查看当先所在的目录(绝对路径)
ls
指令
ls -a
:显示所有文件(包括隐藏文件)ls -l
:按列显示文件(可以简写为:ll
)cd
指令
cd 目录
:目录可以填绝对路径,也可以填相对路径
特别的:
cd ~
:跳转到登录用户的家目录
cd ..
:跳转上上一级文件
你也可以这样用:cd ../../
这是上一级的上一级
mkdir
指令
创建目录指令。
例:mkdir /home/water
就是在home下创建water目录
mkdir -p 目录名
:创建多级目录用-p
参数
简单讲一下,就是如果/home/下没有apple目录,如果我输入
mkdir /home/apple/aaa
是会报错的,因为系统没有apple目录如果你使用
mkdir -p /home/apple/aaa
:系统就会帮你创建/apple
目录和/apple/aaa
目录
rmdir
指令(和rm指令是不同的)
rmdir 要删除的空目录
例:rmdir /home/water
:删除/home/water
这个空目录,如果它water里面有东西的话时会报错的.
提示:如果要删除非空目录的话,需要用到:rm -rf
例:rm -rf /home/water
touch
指令
创建空文件的指令
touch 文件名称
例:touch a.txt
在当前目录下创建a.txt,如果要指定目录创建文件的话
touch 文件路径/文件名
例:touch /home/a.txt
cp
指令
拷贝文件指令
cp 文件路径(文件名) 目的路径
例:cp /home/a.txt /home/bbb
就是将/home
下的a.txt
复制到/home/bbb
下。
如果在当前路径下,可以这样写:cp a.txt /home/bbb
就是将当前路径下的a.txt
复制到/home/bbb
下
-r
:递归复制整个文件夹
例:cp -r /home/aaa /home/bbb
就是将/home/aaa
下的整个文件夹复制到/home/bbb
下
rm
指令
移除文件或目录
rm 要删除的文件或目录
例rm a.txt
:删除a.txt
文件
-r
:递归删除整个目录-f
:强制删除不提示两个参数可以放一起,也可以单独放:
rm -r a.txt
rm -rf a.txt
mv
指令
移动文件与目录或重命名
例:
mv oldNameFile newNamefile
:重命名
mv /home/aaa/a.txt /home/bbb
移动文件
cat
指令
查看文件内容指令
cat 要查看的文件
例:cat /etc/profile
-n
:显示行号
例:cat -n /etc/profile
more
命令
是一个VI编辑器的文本过滤器,它按页的方式来显示文本内容,说起来比较抽象,直接用指令演示
more /etc/profile
操作 | 功能说明 |
---|---|
空格(space) | 向下翻页 |
回车(enter) | 下一行 |
q | 立即离开more的查看状态 |
Ctrl+F | 向下滚动一个屏幕大小 |
Ctrl+B | 返回上一个屏幕大小 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行号的行号 |
less
指令
分屏查看文件内容(针对大型文件的效率较高)
less 要查看的文件
操作 | 功能说明 |
---|---|
空格(space) | 翻页 |
pagedown | 翻页 |
pageup | 返回翻页 |
/字符串 | 向下搜索(你输入的字符串);n:往下翻;N往上翻; |
?字符串 | 向上查找字符串;n:往下翻;N:往上翻 |
q | 离开less状态 |
echo
指令
输出内容到控制台
例:输出某个环境变量:echo $PATH
或者你想输出hello world也是可以的
head
指令
head指令默认显示文件的前10行内容
例:head 文件名
head -n 5 文件名
:就是看5行文件
例:head -n 5 /etc/profile
tail
用于显示文件的尾部内容,也是默认显示10行内容
tail 文件名
:显示文件后10行内容
tail -n 5 文件名
:显示文件后5行内容
上面这两个指令和head
指令类似,自己试一下,我就不演示了
tail -f 文件名
:监听的作用,实时更新文档的内容。
这里需要2个终端来演示,你可以选择在虚拟机内部打开两个终端,或者打开一个shell工具再打开一个虚拟机内部的终端。
我们分别称它们为终端A和终端B
首先,我们在终端A监听一个文件
然后在终端B开着这个文件并修改文件内容并保存
然后再回到终端A,你就看到了
怎么退出这种状态呢?Ctrl+c
就好了
>
和 >>
>:这个是输出重定向
>>:这个是追加
例:
ll > 文件
:就会将ll的结果写入这个文件,如果没有这个文件,系统就会帮你创建这个文件并写入;如果这个文件已存在,那么这个文件的所有内容都会被覆盖掉
ll >> 文件
:就是将ll的结果追加到文件的末尾(在文件已存在的情况下)
ln
创建软连接,类似Windows下的快捷方式
例:ln -s 原文件或目录 软连接名
history
查询已经执行过的历史命令
也可以执行已经执行过的历史命令
!139
执行理事编号为139的指令
date
date
:显示当亲啊时间
date "+%Y"
:显示当当前年份
date "+%m"
:显示当前月份
date "+%d"
:显示当前日期
date "+%Y-%m-%d %H:%M:%S"
:显示年月日时分秒
设置日期
date -s 字符串时间
例:date -s “2020-02-02 20:02:20”
cal
查看日历命令
find
find指令将从指定目录向下递归遍历其各个子目录,将满足条件的文件或者目录显示在终端
例:
find -name a.txt
find -user water
find size +200M(+是大于 -是小于 没有符号是等于)
locate
快速定位文件路径,使用前必须使用updatedb创建locate数据库
grep 和 |
grep
是过滤查找
|
是管道符,将前面命令的处理结果交给后面的命令处理
压缩和解压
gzip:用于压缩文件
gunzip:用于解压
zip:压缩文件
unzip:解压文件
tar
打包指令,最后打包的是.tar.gz
的文件
重启系统,在开机界面选择e
进入编辑界面,用键盘的上下键移动,找到Linux16结尾的地方,在行末输入:
init=/bin/sh
然后按快捷键ctrl+x
进入单用户模式
等到它停下来
然后输入:mount -o remount,rw /
,完成后按下回车
在新的一行的最后输入passwd。然后按下回车键
然后就是输入新的密码了,当然还要确认输入一次密码,当显示passwd…的样式的时候,说明密码修改成功了
接着,输入:touch /.autorelabel
,然后按回车
接着,输入:exec /sbin/init
,然后按回车并等待自动自动修改密码(这个过程比较漫长)。完成后系统会重启,新的密码也就生效了。