Linux -- 02.Linux 文件管理1
Linux 文件管理(上)
1.目录结构
- 查看当前位置的路径:pwd
- 查看命令位置:which。如 which ls,which date,which useradd
- bin:binary的缩写,二进制文件,普通用户使用
- sbin:管理员使用的命令
- dev:设备文件。理解一切皆文件。
- root:root 用户的home
- home:普通用户的家目录所在目录
- proc:反映的是内核、进程的信息或实时状态
- usr:系统文件,相当于C:\Windows
- boot:存放系统启动相关文件
- etc:配置文件
- tmp:进程运行时产生的临时文件
- var:存放一些变化文件,比如数据库,日志,邮件...
2.文件路径
2.1 绝对路径
从/开始的路径
2.2.相对路径
文件前 不加符号 或 .都代表当前目录,..代表上级目录
2.3. cd 切换路径
- cd 直接回到家目录(初始目录)
- cd ../home/alice 去到alice目录
- cd .. 转到上层目录
- cd - 返回上次目录
3.文件管理之创建/复制/移动/删除
3.1.创建文件 touch
- touch file1.txt #无则创建,有则覆盖并修改时间
- touch file2 file3 #创建两个文件
- touch /home/file6 /home/file7 #正确写法
- touch /home/{file6,file7} #正确写法,采用{}集合
- touch /home/file{6,7} #正确写法,逗号表示分开不同的单个值
- touch /home/file{8..9} ##正确写法,..表示一个范围
3.2.创建目录 mkdir
- mkdir /home/dir1 #无则创建,有责报错
- mkdir /home/dir2 /home/dir3
- mkdir /home/dir
- mkdir -v /home/dir{6,7} # -v 打印出创建信息
- mkdir -pv /home/die8/111/22 (-p 连同父母一起创建)
- mkdir -pv /home/{hff/{1,2,3},wangwu}
3.3. 复制文件
- 拷贝到目录,重复拷贝会提示覆盖: cp -v file2 /home/dir1
- 拷贝到文件,并改名yy.txt:cp -v file2 /home/yy.txt
- 拷贝多个文件到目录:cp -v file2 file3 /home/dir2
3.4. 复制目录
- 将etc下的所有文件(夹)都拷贝过去:cp -rv /etc /home/dir1
3.5. 移动文件
- 将文件file2移动到/home/dir1:mv file2 /home/dir1
- 再移回原来位置:mv -v /home/dir1/file2 ./
- 将文件file2移动到/home/dir1 并改名:mv file2 /home/dir1/file20
- 将file2改名为file31,若前后位置不变表示重命名:mv file3 file31
3.6. 移动目录
- mv /home/dir2 /root #将目录 /home/dir2 移动到 /root下
- mv /root/dir2 /home/dir20 #将目录/root/dir2 移动到/home下并改名
- mv /home/dir8 /home/dir80 #将目录dir90 改名为 dir91
3.7. 删除文件
- rm -f /home/useradd.sh #-f 代表强制删除,不会出现提示
- rm -f *.txt #删除所有以txt结尾的文件
3.8. 删除目录
- rm -rf /home/dir1 #-r代表连同其下的文件(夹)一起删除
- rm -rf dir* #删除所有dir为开头的目录
总结
- 创建文件 touch;创建目录 mkdir (注意:-p)
- 复制:cp (注意:\ 去除提示,复制目录时 -r)
- 移动:mv (注意:移动位置不变表示重命名)
- 删除:rm (注意:-f 强制删除,删除目录时 -r)(建议先跳转再删除)
4. 文件管理之查看文件内容
4.1. cat 查看全部
- cat /etc/passwd
4.2. head tail 查看一部分
- head /etc/passwd #默认看前十行
- head -5 /etc/passwd #看前五行
- tail /etc/passwd #默认看后十行
- tail -5 /etc/passwd #看后五行
4.3. grep 查找
- grep 'root' /etc/passwd #查找包含root的行
- grep '^root' /etc/passwd #正则表达式,查找以root开头的行
- grep 'bash$' /etc/passwd #正则表达式,查找以bash结尾的行
- grep 'failure' /var/log/secure #查找非法登录的信息
思考:如何查看文件类型?
方法1:
ls -l 或 ll,看第一个字符
- - 普通文件(文本文件,二进制文件,压缩文件,电影,图片)
- d 目录文件(蓝色)
- b 设备文件(块设备,带缓存,如硬盘,分区:/dev/sda,/dev/sda1)
- c 设备文件(字符设备,不带缓存,如打印机,终端:/dev/tty1,/dev/zero)
- s 套接字文件
- p 管道文件
- l 链接文件(淡蓝色)
方法2:file 命令 查看文件类型
- file /etc/hosts
- file /bin/ls
- file /dev/sda
- file /dev/tty1
- file /etc/grub2.cfg
- file /home
- file /run/dmeventd-client