Day3-文件管理
文件管理
文件或目录 创建 复制 移动 删除 编辑 查找 等...
1.Linux系统的目录结构
` Windows:` 以多根方式组织文件 C:\ D:\`
` Linux:` 以单根方式 /存放命令相关的目录`
`/bin `普通用户使用的二进制命令`
`/sbin `只有超级管理员才能执行的存放用户相关数据的家目录
`/home` 普通用户家目录 默认在 `/home/username`
`/root `超级管理员的家目录`
`系统文件目录`
`/usr 相当于C:\Windows`
`/usr/local ` 软件安装的目录,相当于`C:\Program File`
`/usr/bin 普通用户使用的应用程序(重要)`
`/usr/sbin 管理员使用的应用程序(重要)`
`/usr/lib 库文件Glibc 32bit`
`/usr/lib64 库文件Glibc 64bit`
`启动目录`
`/boot 存放系统启动的相关文件,例如:kernel 等...`
配置文件目录
`/etc 极其重要,后期所有服务的配置都在这个目录中`
`/etc/sysconfig/network-… 网卡配置文件`
`/etc/hostname 系统主机名配置文件`
`/etc/resolv.conf dns客户端配置文件`
`/etc/hosts 本地域名解析配置文件`
可变的目录与临时目录`
`/var 存放一些可变的文件,比如/var/log/下的日志文件`
`/tmp 系统临时存放的一些文件`
`/var/tmp 进程产生的临时文件
设备目录文件`
`/dev 存放设备文件,比如硬盘等`
`/dev/sd sda sdb sdc4`
`/dev/null 黑洞设备,只进不出`
`/dev/random 生成随机数的设备`
`/dev/zero 能源源不断的产生数据
虚拟的文件系统`
`/proc 反映当前系统正在运行进程的实时状态`
PS: 在Linux7系统中, /bin, /sbin, /lib, /lib64都以软链接的形式链接到/usr/目录下
/bin --> /usr/bin
/sbin --> /usr/sbin
lib -> usr/lib
lib64 -> usr/lib64
media 设备挂载点
mnt 设备挂载点
opt 第三方工具默认安装的目录
run 进程运行的pid,(放在一个文件中) lock相关文件
2.文件定义
比如 /etc/hostname,整个文件中包含文件名称以及文件所在的位置,我们将这个叫做路径,也就是说我们是通过路径对文件进行定位。
绝对路径
只要以/开始的路径都算绝对路径
~是当前用户的家目录
ls ~/file1
相对路径
相对于当前目录来说的路径 ls a.txt ls ./a.txt ls ../a.tx.和..是什么?
.代表当前目录
..代表当前目录的上一级目录
绝对路径和相对路径,到底使用哪一个?
没有明确的说法
cd改变目录,常见的使用方法
cd绝对路径 cd /etc/hostname
cd相对路径 cd test/abc cd . cd ..
cd切换到上一次所在目录 cd -
3.基本命令
mkdir
创建目录
mkdir oldboy1 在当前路径下创建oldboy1目录
mkdir oldboy1/oldboy2/oldboy3/oldboy4 -p 一次创建多个目录
1.创建从1-100个目录
mkdir {1..100}
2.创建dir-1到dir-50个目录
mkdir dir-{1..50}
3.了解即可
mkdir /opt/{bin,logs,conf}/test -p
touch
创建一个空的文件
touch test.txt
>mv移动文件
mv 源文件 目标位置
1.将文件移动到目录
mv ribao.txt dir-7/
2.将文件名称修改
mv hostname test
3.移动并修改文件名称
mv file /tmp/ttt
4.批量移动文件
mv dir-1 dir-2 dir-3 test dir-15/
rm
删除文件或目录
-f 强制删除
-r 递归删除目录及其内容
删除文件
rm file1
/bin/rm file2
rm -f file3
rm -rf 99/
删除多个文件
rm -rf dir-*
rm -rf {1..100}
rm -f ./file4
Ps:删除时,文件用-f,目录才加-r 尽可能不要-rf一起使用
相关命令
cd
cd 切换目录
pwd
pwd 打印当前目录
mkdir
mkdir 创建目录
-p 递归创建
touch
touch 创建一个空文件
mv
mv 移动文件或重命名文件
rm
rm 删除文件
-f 强制删除不提示
-r 递归删除目录