1、学习方法分享
课程的前半部分:–>作用就是打基础的;
后半部分才是核心:重点掌握–>斩获高薪
课前讲解作业:
- 基础作业:echo命令的使用
- 优化:进阶:
- 有可能需要用到课程也也以外的知识点;
- 百度、Google等等辅助
学习记忆法则:
- 死记硬背:
- 谐音法则
- 重复法则
把难点、记忆点
- 放到CSDN发博客;
- 运用思维导图
- 接下来就是文件系统的讲解
2、文件系统详解
2.1、文件系统
计算机文件系统:
- 用于存储和组织计算机数据的方法;让访问数据变得更加容易
- 文件系统会调用目录和文件名
Linux的文件系统:
- ext2:centos6之前
- ext3:centos6之前
- ext4:centos6
- xfs:centos7
- NTFS:
- iso9660
- tmpfs:缓存相关
Linux文件系统:
- 是一个以/目录开始的文件系统
- Linux只有一个/,树状结构,
- 可以使用tree命令查看
- Linux当中一切皆是文件–>这话很重要
#命令也是文件
#使用which命令可以查询命令路径
[root@Node1 ~]# which find
/usr/bin/find
2.2、Linux的根目录下的重要文件
使用tree命令可以查看/下的目录结构
- -L:制定查看的层数;
#各个目录的功能介绍
[root@Node1 ~]# tree -L 1 /
/ #Linux的顶点:/目录
├── bin -> usr/bin #普通用户使用的命令
├── boot #存放启动文件、用于引导的
├── dev #设备文件:/dev/sdc /dev/sdd
├── etc #yum安装默认的配置文件路径
├── home #普通用户的家目录
├── lib -> usr/lib #存放库文件的路径
├── lib64 -> usr/lib64 #存放库文件的路径
├── media #用于挂在光盘的文件
├── mnt #手工挂在设备的挂载点
├── opt #临时的目录
├── proc #虚拟文件存放的路径,反映出内核的相关参数lsof
├── root #root目录的家目录
├── run #进程相关的目录
├── sbin -> usr/sbin #管理员使用的命令存放的路径你呢
├── srv #
├── sys #系统相关参数存放的路径
├── tmp #临时目录
├── usr #源码安装默认的路径
└── var #日志存放的目录
2.3、常用的文件
/etc/hostname : #主机名配置文件
/etc/hosts: #设置用户IP和域名一对一的映射关系
/etc/fstab: #配置开机自动挂在
/etc/motd #开机读出来的信息
/etc/init.d/: #开机自启动的服务,或者是说运行级别
/etc/redhat-release #查看系统版本信息
/var/log/dmesg #记录硬件
查看系统的版本信息
[root@Node1 ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
查看ssh的登陆日志
#查看登陆信息
[root@Node1 ~]# cat /var/log/secure
..........
May 21 20:42:35 Node1 sshd[6634]: pam_unix(sshd:session): session opened for user root by (uid=0)
#时间、登陆主机名是否成功等等
查看硬盘信息
[root@Node1 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 19.5G 0 part
├─centos-root 253:0 0 18.5G 0 lvm /
└─centos-swap 253:1 0 1G 0 lvm [SWAP]
sr0 11:0 1 4.3G 0 rom
查看主机名
[root@Node1 ~]# uname -a
Linux Node1 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
2.4、绝对路径与相对路径
绝对路径:从根开始的路径就是绝对路径
- 例如:/etc/sysconfig
**相对路径:**从当前路径(非/)开始的目录开始的路径
- 例如:a/b/c/d
特殊字符的几个说明
- …上级目录
- ~当前用户的家目录
- .当前目录
配置文件:
Linux当中,修改配置文件就能够实现对应的功能;这也体现出了,Linux一切皆文件的特性;
- /etc/httpd/http.conf
- 里面有个passwd的配置
- 可以直接指定功能–>指定了密码文件的路径
- passwd=/root/passwd
- 里面有个passwd的配置
3、文件管理命令
对文件的操作,无非就是增删改查;
- 增加:touch 、mkdir
- 删除:rm 、rmdir
- 修改:cd
- 查询:ls、cat、more、head命令
- 其他类型:hostname 、ifconfig
3.1、touch命令
作用:常见空文件,或者修改文件的时间戳
语法:touch+选项+文件名
选项:文章来源:https://www.toymoban.com/news/detail-422949.html
- -m:只改变文件的修改时间
- -a:改变文件的访问时间
- 如果使用echo命令
#创建一个文件;
[root@Node1 ~]# touch liangjiawei.txt
[root@Node1 ~]# ls liangjiawei.txt
liangjiawei.txt
# 查看的文件-->文件的信息
[root@Node1 ~]# stat liangjiawei.txt
File: ‘liangjiawei.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 33658315 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2023-05-23 11:22:42.864878837 +0800
Modify: 2023-05-23 11:22:42.864878837 +0800
Change: 2023-05-23 11:22:42.864878837 +0800
Birth: -
#输出讲解:
Access:访问时间--->cat liangjiawei.txt可以修改访问时间
Modify:修改时间-->vim liangjiawei.txt,可以修改内容的时间
Change:改变文件属性,属主和属组的权限
#当使用ls命令来查看文件-->发现,Access时间已经改变了(对比第一个)
[root@Node1 ~]# ls liangjiawei.txt
liangjiawei.txt
#如果使用echo来改变文件内容,则访问时间不会改变
[root@Node1 ~]# echo "this is liangjiawei" >> liangjiawei.txt
[root@Node1 ~]# stat liangjiawei.txt
.....
Access: 2023-05-23 11:22:42.864878837 +0800
............
#如果改变文件的属性,则会改变Change time
[root@Node1 ~]# chown liangjiawei:liangjiawei liangjiawei.txt
[root@Node1 ~]# stat liangjiawei.txt
.....
Change: 2023-05-23 13:02:01.200521864 +0800
#如果修改内容,则会修改mtime
[root@Node1 ~]# vim liangjiawei.txt
[root@Node1 ~]# stat liangjiawei.txt
.....
Modify: 2023-05-23 13:02:55.906518586 +0800
#如果touch修改创建文件,文件存在就会修改文件的时间戳
[root@Node1 ~]# touch liangjiawei.txt
[root@Node1 ~]# stat liangjiawei.txt
..........
Access: 2023-05-23 13:04:08.005514267 +0800
Modify: 2023-05-23 13:04:08.005514267 +0800
Change: 2023-05-23 13:04:08.005514267 +0800
3.2、mkdir命令
作用:创建目录
语法:mkdir+ 选项+ 目录名
选项:
- -v:显示创建过程
- -p:递归创建,连同父目录也一起创建
- -m:创建目录的时候直接指定了权限
#普通创建一个目录
[root@Node1 ~]# mkdir /sh
#如果目录名相同,创建目录会失败
[root@Node1 ~]# mkdir /sh
mkdir: cannot create directory ‘/sh’: File exists
#直接指定权限创建
[root@Node1 ~]# mkdir -m 777 /sh/liangjiawei
[root@Node1 ~]# ls -ld /sh/liangjiawei/
drwxrwxrwx 2 root root 6 May 23 13:06 /sh/liangjiawei/
3.3、rm命令
作用:删除文件或者目录
语法:人民 + 选项+文件名
选项:
- -r:递归删除
- -v:详细参数
- -f:强制删除
注意事项:
- 这个是一个非常危险的命令
- 必须提前做好备份,日常工作使用移动代替删除;
- 如果确实要删除,提示一个信息;可以不删除就尽量不删除;
#强制删除
[root@Node1 ~]# rm -rf /sh/
#可以结合通配符进行删除
[root@Node1 ~]# rm -rf ./*
#删除/是十分危险的操作-->系统有默认的安全机制-->
[root@Node1 ~]# rm -rf /
rm: it is dangerous to operate recursively on ‘/’
rm: use --no-preserve-root to override this failsafe
3.3、cp命令
作用:拷贝、复制文件
语法:
- cp 源文件 目标文件
选项:
- -p:保留源文件的属性
- -R:递归拷贝
- -v:显示详细信息
#复制文件
[root@Node1 ~]# cp /etc/passwd .
[root@Node1 ~]# ls
passwd
3.4、mv命令
作用:移动文件、或者是改名文件
语法:mv+选项+源文件+目标文件
选项:
- -b:如果覆盖文件,则会对文件进行备份
- -f:如果目标文件存在,不会询问,直接覆盖
#移动文件
[root@Node1 ~]# mv /etc/passwd .
#备份文件
[root@Node1 ~]# mv -b passwd /tmp/
3.5、cat命令
作用:查看文件内容
语法:cat + 选项 + 文件名
选项:
- -n:添加行号
- -b:对空行不编号
- -s:如果遇到两个空行以上,则会压缩成一行
#查看文件
[root@Node1 ~]# cat /tmp/passwd
root:x:0:0:root:/root:/bin/bash
........
#查看文件并且显示行号
[root@Node1 ~]# cat -n /tmp/passwd
1 root:x:0:0:root:/root:/bin/bash
.........
cat可以结合重定向对文件输入内容文章来源地址https://www.toymoban.com/news/detail-422949.html
#编写一个函数
[root@Node1 ~]# vim aa.txt
liangjiawei(){
cat << EOF
1.apple
2.banana
3.pear
Please slect one that you like:
EOF
}
list
到了这里,关于LiangGaRy_学习笔记_Day04的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!