课堂PPT






最危险的命令:

rm -rf /
避免这个问题,公司用堡垒机,授权普通用户登录,需要什么权限授权即可。














实验步骤:


[root@server10 ~]# ls –help 查看ls的帮助信息
[root@server10 ~]# man ifconfig 查看ifconfig的命令手册(比–help更详细)
[root@server10 ~]#

[root@server10 ~]# cd /etc/NetworkManager/system-connections/ 进入网卡配置文件的目录
[root@server10 system-connections]# pwd 查看当前目录的位置
/etc/NetworkManager/system-connections
[root@server10 system-connections]#
[root@server10 system-connections]# cd .. 返回到上一级目录
[root@server10 NetworkManager]# pwd 查看当前目录的位置
/etc/NetworkManager
[root@server10 NetworkManager]# cd ~ 返回到宿主目录下
[root@server10 ~]# pwd
/root
[root@server10 ~]# cd – 返回到上一次执行命令之前所在的目录
/etc/NetworkManager
[root@server10 NetworkManager]#


[root@server10 ~]# ls
anaconda-ks.cfg
[root@server10 ~]# ls -a
. anaconda-ks.cfg .bash_logout .bashrc .cshrc .ssh .viminfo
.. .bash_history .bash_profile .config .lesshst .tcshrc
[root@server10 ~]#
Ls的选项全解
-a:显示指定目录下的所有文件以及子目录,包含隐藏文件( Linux系统中将 “ . ” 开头的文件或目录视为隐藏文档 )
-A:列出除隐藏文件外的所有项目
-b:以 C 风格的转义序列表示不可打印的字符
-c:通常与 -lt 一起使用时:按照 ctime 排序,并显示ctime(文件状态信息最后修改的时间)
-C:按列输出,纵向排序
-d:仅显示目录的名称,而不是列出目录中的内容
-f:按照目录顺序列出各项目
-g:类似 -l,但不列出所有者
-G:使用长列表格式时,不输出组名
-h:同时使用 -l 或 -s 时,将大小表示为 1K 234M 2G 等
-H:跟随命令行中列出的符号链接
-i:显示每个文件的索引编号(inode 号)
-I( i 的大写 ):隐藏符合 shell <模式> 的项目
-k:显示文件系统使用量时,默认使用 1024 字节的块大小
-l:除文件名称外,同时将文件或者子目录的权限,使用者、大小等信息详细列出
-L:当显示符号链接的文件信息时,显示符号链接指向的文件的信息,而非符号链接本身的信息
-m:横向输出文件名,并以 “ ,”作为分隔符
-n:类似 -l,但列出用户和组的 ID 号
-N:输出不加引号的项目名称
-o:类似 -l,但显示除组信息以外的详细信息
-p:对目录追加 “/” 作为指示符号
-q:以 “?” 字符代替不可打印的字符
-Q:把输出的文件名用双引号括起来
-r:排序时逆序排列
-R:递归地列出子目录
-s:在每个文件名后输出该文件的大小,单位为块
-S:根据文件大小排序,最大的最前
-t: 按时间排序,最新的最前
-T:指定制表符宽度为 <列数>,而非默认的 8
-u:以文件被上次访问的时间排序
-U:不进行排序;按照目录顺序列出项目
-v:对文本中的数字(或版本号)进行自然排序
-w:设置输出宽度为 <列数>。0 表示无限制
-x:按列输出,横向排序
-X:按照扩展名的字母顺序排序
-Z:输出每个文件的所有安全上下文信息
-1:每行只列出一个文件
–help :显示此帮助信息并退出


[root@server10 ~]#
[root@server10 ~]# ll ls -l的别名
total 4
-rw——-. 1 root root 1494 Feb 17 10:00 anaconda-ks.cfg
[root@server10 ~]#
[root@server10 ~]# ls -al 查看文件的具体信息(包含隐藏文件)
total 40
dr-xr-x—. 4 root root 4096 Feb 18 09:17 .
dr-xr-xr-x. 18 root root 255 Feb 18 08:47 ..
-rw——-. 1 root root 1494 Feb 17 10:00 anaconda-ks.cfg
-rw——-. 1 root root 162 Feb 18 09:17 .bash_history
-rw-r–r–. 1 root root 18 May 11 2022 .bash_logout
-rw-r–r–. 1 root root 141 May 11 2022 .bash_profile
-rw-r–r–. 1 root root 429 May 11 2022 .bashrc
drwx—— 3 root root 20 Feb 18 09:16 .config
-rw-r–r–. 1 root root 100 May 11 2022 .cshrc
-rw——- 1 root root 20 Feb 18 09:17 .lesshst
drwx——. 2 root root 6 Feb 17 09:51 .ssh
-rw-r–r–. 1 root root 129 May 11 2022 .tcshrc
-rw——-. 1 root root 860 Feb 17 10:45 .viminfo

du 显示文件大小
-a;-s不显示单位 du -h显示单位

[root@server10 ~]#
[root@server10 ~]# mkdir /1/2/3 创建/1/2/3目录
mkdir: cannot create directory ‘/1/2/3’: No such file or directory 没有此文件或目录
[root@server10 ~]#
[root@server10 ~]# mkdir -pv /1/2/3 递归创建/1/2/3目录,并显示创建过程 (-p递归,v是创建过程)
mkdir: created directory ‘/1’
mkdir: created directory ‘/1/2’
mkdir: created directory ‘/1/2/3’

[root@server10 ~]# cd 111 进入111的目录下
[root@server10 111]#
[root@server10 111]# touch 11.txt 创建111.txt的文件
[root@server10 111]# ll 查看文件及目录的详细信息
total 0 表示空文件
[root@server10 ~]# cd /1/2/3/ 进入/1/2/3目录
[root@server10 3]#

[root@server10 3]# echo “111111111” > bb 创建bb的文件并写入 1111111111的内容
[root@server10 3]#
[root@server10 3]# cat bb 查看bb文件的内容
111111111
[root@server10 3]# ln bb Hardbb 创建bb文件的硬链接Hardbb
[root@server10 3]#
[root@server10 3]# ln -s bb Softbb 创建bb文件的软链接Softbb
[root@server10 3]#
[root@server10 3]# ll 查看文件记录的详细信息
total 8
-rw-r–r– 2 root root 10 Feb 18 10:16 aa
-rw-r–r– 2 root root 10 Feb 18 10:16 bb
-rw-r–r– 2 root root 10 Feb 18 10:16 Hardaa
lrwxrwxrwx 1 root root 2 Feb 18 10:17 Softaa -> aa Softaa -> aa软连接有箭头的标识
[root@server10 3]# rm bb 删除aa文件
rm: remove regular file ‘bb’? y 确认
[root@server10 3]# ll
total 4
-rw-r–r– 1 root root 10 Feb 18 10:16 Hardaa
lrwxrwxrwx 1 root root 2 Feb 18 10:17 Softaa -> aa
[root@server10 3]#
[root@server10 3]# cat Softbb 查看软链接文件
cat: Softaa: No such file or directory 没有此文件或目录
[root@server10 3]#
[root@server10 3]# cat Hardbb 查看硬链接文件
111111111

[root@server10 3]# cd /etc/NetworkManager/system-connections/ 进入网卡配置文件目录
[root@server10 system-connections]# ls 查看文件及目录
ens160.nmconnection 网卡配置文件
[root@server10 system-connections]# cp ens160.nmconnection ens160.nmconnection.bak 将网卡配置文件备份 .bak备份
[root@server10 system-connections]# ll 查看文件及目录的详细信息
total 8
-rw——-. 1 root root 268 Feb 17 10:00 ens160.nmconnection
-rw——- 1 root root 268 Feb 18 10:48 ens160.nmconnection.bak

-f 强制
-r 递归

[root@server10 3]# ls 显示文件及目录
Hardaa Softaa
[root@server10 3]# mv Hardaa AA 将Hardaa剪切(重命名)为AA
[root@server10 3]# ll
total 4
-rw-r–r– 1 root root 10 Feb 18 10:16 AA
lrwxrwxrwx 1 root root 2 Feb 18 10:17 Softaa -> aa
[root@server10 3]#

[root@server10 ~]# which ls 查看ls命令的位置
alias ls=’ls –color=auto’
/usr/bin/ls
[root@server10 ~]#
[root@server10 ~]# which cp 查看cp命令的位置
alias cp=’cp -i’
/usr/bin/cp
[root@server10 ~]#
[root@server10 ~]# which crontab 查看计划任务命令的位置
/usr/bin/crontab


[root@server10 ~]# find /boot -size +1024k -a -name “vmlinuz*” 查找在boot目录下,大小为+1024k 并且名字为vmlinuz 开头的所有文件
/boot/vmlinuz-5.14.0-503.14.1.el9_5.x86_64
/boot/vmlinuz-0-rescue-50bc66df34cd46b6b626f8e13b144f6c
[root@server10 ~]#
[root@server10 ~]# find /boot -size +1024k -o -name “vmlinuz*” 查找在boot目录下,大小为+1024k 或者名字为vmlinuz 开头的所有文件
/boot/grub2/fonts/unicode.pf2
/boot/vmlinuz-5.14.0-503.14.1.el9_5.x86_64
/boot/System.map-5.14.0-503.14.1.el9_5.x86_64
/boot/initramfs-5.14.0-503.14.1.el9_5.x86_64.img
/boot/vmlinuz-0-rescue-50bc66df34cd46b6b626f8e13b144f6c
/boot/initramfs-0-rescue-50bc66df34cd46b6b626f8e13b144f6c.img
/boot/initramfs-5.14.0-503.14.1.el9_5.x86_64kdump.img

目录结构
/ 根目录
bin:存放二进制文件、命令文件
boot:启动 存放内核文件
dev:设备,键盘,硬盘,光盘,U盘,显示器
/dev/null 黑洞文件
/dev/zero 可以从当中取数据生成文件
/dev/random 生成随机数 echo $(random)
etc: 存放的是配置文件(软件 程序)
/etc/hostname: 主机名
/etc/NetworkManager/system-connections/ 网卡的配置
home:普通用户家目录 /home/$USERNAME
lib:库文件,为命令做支持 建议不要动
lib64:库文件,为命令做支持 建议不要动
media:早期挂载光盘使用的
mnt:早期挂载光盘使用的
opt:早期第三方厂商工具,
proc:存放系统运行时的一些实时状态数据
root:超级管理员的家目录(普通用户无权进入)
run:存放设备的驱动,存放进程的pid文件编号的文件,锁文件
sbin:超级管理员执行的命令 ,例如 reboot shutdown等
srv:忽略 空的
tmp:临时的;所有用户都可以存储数据到这个目录中来;谁创建谁删除
sys:系统 不要动
usr:相当于windows的C盘 软件安装的目录
/usr/bin
/usr/sbin
var:可变化的文件:日志
编辑Linux命令行命令行的辅助操作
ls
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
Linux 的 ls 和 ll 的使用方法:
ll:罗列出当前文件或目录的详细信息,含有时间、读写权限、大小、时间等信息 ,像windows显示的详细信息。ll是“ls -l”的别名。相当于windows里的快捷方式。可以理解为 ll 和 ls -l 的功能是相同的, ll 是 ls -l 的别名。
ls:仅罗列出当前文件名或目录名 就像windows里的文件列表。
一、ll 是 ls -l 的别名查看方法,使用:(alias)查看别名情况。
“/”表示路径,“\”表示转义
ctrl + k : 剪切光标及其后边的内容;
ctrl + u : 剪切光标之前的内容
echo(echo)
输出指定的字符串或变量
rm [选项]… 文件…
-f, –force 强制删除。忽略不存在的文件,不提示确认
-i 在删除前需要确认
-r, -R, –recursive 递归删除目录及其内容
实验总结(注意事项:难点/重点/出错点)
重点:
最危险的命令:rm -rf /
软硬连接
软硬连接:创建软链接 ln [-s] 源文件或目录 其中-s是创建软链接