本文章最初发布在 XJHui’s Blog,未经允许,任何人禁止转载!
注意:最新修改版本已发布在 这里,点击前往查看!
运行级别
级别概述
系统运行级别示意图:
运行级别介绍:
- 0关机
- 1单用户【找回root密码】
- 2多用户状态【无网络服务】
- 3多用户状态,有网络服务【常用】
- 4保留
- 5图形界面【常用】
- 6重启
查看当前系统运行级别:
1
vim /etc/inittab
运行结果:
切换运行级别
语法:
1
init [0,6] # 不要使用4,因为4未被指定
实例:
运行结果:
切换为图形化界面:
运行结果:
特殊级别:
级别0:关机
1
init 0
运行结果:
级别6:重启
1
init 6
运行结果:
两种修改方式的区别:
1
vim /etc/inittable # 在该文件中将系统运行级别修改为3,系统每次重启后运行级别均为3
1
init 3 # 命令行中执行init3,系统重启后运行级别与/etc/inittable中一致,未必是3
注意:如果编辑/etc/inittable将系统运行级别设置为0,系统会无限重启!如何解决?看完下面的面试题就知道了
面试题
如何找回丢失的root密码?
原理:进入单用户模式(系统运行级别为1),修改root密码(进入单用户模式不需要输入root密码)
操作:
服务器启动时,按下enter键,输入e,上下移动光标选中第二行,再输入e:
下图命令行中输入
空格1
,按下回车,输入b:成功进入系统(无需root密码):
使用passwd命令修改密码:
安全:该方法只能在服务器操作(不可远程)且一般的人也接触不到服务器,所以足够安全。个人电脑,安全??
帮助指令
介绍
当对某个命令不熟悉时,可以使用linux提供的帮助指令来了解这个命令的使用方法。
man指令
语法:
1
man [命令或配置文件] # 获取该命令的使用方法以及其它信息
案例:查看ls命令的帮助信息
1
man ls
运行结果:
注意:按q退出man指令
help指令
语法:
1
help 命令 # 获取该命令的使用方法以及其它信息
实例:查看cd目录作用
1
help cd
运行结果:
文件目录类
pwd
语法:
1
pwd # 显示当前工作目录的绝对路径
案例:显示当前工作目录
ls
语法:
1
2
3
4ls # 显示当前目录下所有文件和文件夹
ls -l # 显示文件和文件夹的详细信息,可简写为ll
ls -lh # 显示文件和文件夹的详细信息,大小非字节
ls -al # 显示所有文件(含隐藏文件)的详细信息案例:查看当前路径下所有文件详细信息:
1
ls -al
运行结果:
cd
语法:
1
cd 目录 # 切换到指定路径
绝对路径和相对路径:当前所在路径为/root要求切换到/home路径下
- 绝对路径:/home
- 相对路径:../home(..代表返回上一级目录)
案例:
使用绝对路径切换到root目录
1
cd /root
回到上一级
1
cd ..
回到家目录
1
cd ~
mkdir
语法:
1
mkdir -p[可选,创建多级目录] 目录名 # 创建文件夹
案例:
/home目录下创建dog目录
1
mkdir /home/dog
/home目录下创建/animal/tiger
1
mkdir -p /animal/tiger
rmdir
语法:
1
rmdir 目录名 # 只能删除空目录
案例:
删除空目录tiger:
1
rmdir tiger/
删除非空目录animal:
1
rm -rf animal/
注意:rmdir不能删除非空目录,可以使用rm -rf命令代替
touch
语法:
1
touch 文件名 # 创建空文件
案例:
创建一个空文件hello.txt
1
touch hello.txt
运行结果:
一次创建多个文件 hello1.txt hello2.txt
1
touch hello1.txt hello1.txt
cp
语法:
1
cp -r[递归复制] source dest # 将source拷贝到dest路径中
案例:
将aaa.txt移动到/root/test/中:
1
mv aaa.txt /root/test/
将/root/test目录拷贝到/home中:
1
cp -r /root/test /home # 递归复制
运行结果:
再次执行上个案例的拷贝命令:
1
cp -r /root/test /home # 递归复制
运行结果:
如何跳过询问,强制覆盖?使用\cp命令
1
\cp -r /root/test/ home/
运行结果:
rm
语法:
1
rm -r[可选,递归删除] f[可选,强制删除不提示] 文件名/目录 # 移除文件或目录
案例:
删除/root/linux.txt文件:
1
rm linux.txt
运行结果:
删除/root/windows.txt文件:
1
rm -f windows.txt # 不提示,强制删除
运行结果:
注意:和上一个案例区分,加上-f则不再询问是否删除
删除/root/bbb(非空)目录:
1
rm -rf /root/bbb # 强制递归删除非空目录
运行结果:
mv
语法:
1
2mv 文件名 文件名 # 重命名
mv 文件名 路径 # 移动文件案例:
将文件hello.cpp重命名为nihao.cpp:
1
mv hello.cpp nihao.cpp
将文件nihao.txt移动到/home/animal目录下:
1
mv nihao.cpp /home/animal/
cat
语法:
1
cat -n[可选,显示行号] 文件名 # 查看文件内容
案例:查看/etx/profile文件内容,并显示行号
1
cat -n /etc/profile
运行结果:
注意:执行cat命令后,文件内容会被一次显示,使用管道符|可分页显示
1
cat -n /etc/profile | more
运行结果:
注意:按空格键可向下翻页,此方法不支持向上翻页,按q退出more指令
more
语法:
1
more 文件名 # 全屏方式按页显示文本文件内容
案例:采用more指令查看文件 /etc/profile
1
more /etc/profile
运行结果:
快捷键:
- 下翻一行:enter
- 下翻页:空格、ctrl+f
- 上翻页:b、ctrl+b
- 退出more:q
less
语法:
1
less 文件名 # 按需加载,适合大文件的查看
案例:使用less命令查看/etc/profile的内容
1
less /etc/profile
快捷键与more基本相同,使用
/字符串
实现查询功能,n向下查询,N向上查询
>和>>
含义:
- > (输出重定向):会将文件原来的内容覆盖
- >>(追加写):不覆盖而是追加到文件的尾部
案例:
将ls -l指令显示的内容写入到a.txt文件中:
1
ls -l > a.txt
运行结果:
将ls 指令显示的内容追加写到a.txt文件中:
1
ls >> a.txt
运行结果:
将/etc/profile的内容写入到b.txt文件中:
1
cat /etc/profile > b.txt # 与cat|more|less等命令搭配使用
运行结果:
将
hello world
覆盖写入到a.txt文件中:1
echo "hello world" > a.txt
运行结果:
请在当前目录(/home)打印/root的文件列表:
1
ls -l /root # 打印其他路径下的文件目录,可以不cd到该路径下
运行结果:
echo
语法:
1
echo 变量/文本 # 输出环境变量、文本
案例:输入linux的path路径
1
echo $PATH # $PATH与windows下的path环境变量类似
运行结果:
head
语法:
1
head -n 5[可选,显示指定行数] 文件名 # 显示文件开头内容,默认显示前10行
案例
使用head命令显示/etc/profile文件的内容:
1
head /etc/profile # 默认显示前10行
运行结果:
使用head命令显示/etc/profile文件的前5行:
1
head -n 5 /etc/profile # 显示具体行数要加参数-n
运行结果:
tail
语法:
1
2
3tail 文件 # 默认显示文件后10行内容
tail -n x 文件 # 与head类似也可以使用参数-n来显示具体后n行内容
tail -f 文件 # 实时追踪该文档的所有更新,工作中很常用案例:
显示/etc/profile后5行:
1
tail -n 5 /etc/profile
运行结果:
实时追踪c.txt文件的变化:
1
在虚拟机中向c.txt文件追加写入内容,并在xshell中使用tail -f监控文件变化
运行结果:
注意:使用快捷键ctrl+c退出追踪
ln
语法:
1
ln -s [原文件或目录] [软链接] # 给原文件创建一个软链接(类似windows中个快捷方式)
案例:
/root目录下创建一个软链接,链接到/root目录:
1
ln -s /root linkToRoot
运行结果:
软链接的使用:
1
cd linkToRoot/
运行结果:
软链接的删除:
1
rm -rf linkToRoot # 注意:删除软链接时最后不要添加/
history
语法:
1
2
3history # 显示所有历史指令
history 5 # 显示最近执行的5条指令
!123 # 执行history中第123条指令案例:
显示最近执行的6条指令:
1
history 6
运行结果:
执行第286行指令:
1
!286
运行结果:
不足之处,欢迎留言,会及时回复,及时更正!
创作不易,感谢支持!