文件管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件管理相关的知识,希望对你有一定的参考价值。

文件系统与目录结构

技术图片

文件系统结构

技术图片
技术图片
技术图片
技术图片
技术图片

Linux下的文件类型 :

技术图片
例:查看文件类型
技术图片

PWD

显示当前shell CWD的绝对路径
-P 显示真实物理路径
-L 显示连接路径(默认)
技术图片
basename :基名
dirname :目录名
例:显示当前工作目录
技术图片
例: 获取/etc/sysconfig/的基名
技术图片
例: 取/etc/sysconfig/的路径名
技术图片

cd

使用绝对或相对路径:
cd /home/wang/ cd home/wang
cd ..: 切换至父目录
cd 切换至当前用户主目录
cd - 切换至以前的工作目录
技术图片
例:切换到用户家目录
技术图片
技术图片
例:切换到父目录
技术图片
例:切换到/etc/sysconfig目录下
技术图片
例:切换到上一次所在的目录
技术图片

ls

列出目录内容
技术图片
例: 显示当前目录下所有文件
技术图片
例: 显示目录内容的额外信息
技术图片
或者
技术图片
例: 递归显示目录内容
技术图片
例:组合应用
技术图片

stat

查看文件状态
技术图片
例: 查看issue文件的状态,注意三个时间戳
技术图片

通配符

技术图片
技术图片

touch

用来生成空文件,如果此文件存在,将刷新此文件的时间戳
技术图片
例:创建空文件test.sh
技术图片
技术图片

cp

复制文件和目录
注意:cp是cp - i的别名
直接复制不在询问:cp
技术图片
技术图片
技术图片

常用选项:

技术图片
技术图片
练习题
每天将/etc/目录下所有文件,备份到/data独立的子目录下,并要求子目录格式为backupYYY-mm-dd,备份过程可见
技术图片
创建/data/rootdir目录,并复制/root下所有文件到该目录内,要求保留原有权限
三种方法:
技术图片
技术图片
技术图片
例:将/etc/issue文件复制到/data/下改名为issue.bak
技术图片
例:复制文件/data/issue.bak并重命名为/data/issue.bak.1
技术图片
例:文件夹不能复制到文件里面,会报错
技术图片
cp - a :
技术图片
cp -v :保留过程
cp - R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
例:复制/etc目录下所有文件及其子目录到当前目录,并重命名为etc_bak
技术图片

MV

移动和重命名文件

用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中;可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中;如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。

注意事项:移动并不是复制,mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。

常用选项:

技术图片
例:将 fstab文件移动到/tmp下,(本目录的fstab不在了)
技术图片
例: 移动整个文件夹
技术图片
例: 把rootdir文件夹名字重命名为dir
技术图片

rm

删除

常用选项:

技术图片
rm 是 rm-i 的别名,不再询问: m
例:
技术图片
先清除垃圾文件,腾出磁盘空间:
技术图片
技术图片

rename

批量修改文件
例:把txt文件都加上bak后缀并备份下来
解译:找到所有以 f 开头的文件,发现有f 开头的txt文件,就替换成txt.bak
技术图片

目录操作:

tree

显示目录树

常用选项:

技术图片
例:查看/boot目录结构
技术图片
tree - d:只显示目录不显示文件
技术图片

mkdir

创建目录,文件夹

常用选项

技术图片
例: 创建dir3 目录
技术图片
mkdir - p:子目录和父目录一起创建
例:
技术图片

rmdir

删除空目录

常用选项

技术图片
例: 不能删空目录
技术图片
rmdir - p : 递归删除父空目录
例:
技术图片
rm -r :递归删除目录树

索引节点

inode

包含文件系统所有文件列表
技术图片
inode表结构:
技术图片
目录:
技术图片
inode表:
技术图片
ls - i :可以看出节点编号
技术图片

cp和inode

技术图片

rm和inode

技术图片

mv和inode

技术图片

硬链接

给同一个文件名起多个名称
技术图片
例:
技术图片

符号(或软)链接

技术图片
例:
技术图片
例: 把 /usr/sbin/apachectl文件在当前目录下创建软连接文件为apachectl
技术图片

理论:硬链接和软链接的区别

2.1.本质:
硬:本质是同一个文件
软:本质不是同一个文件
2.跨分区
3.inode
4.链接数
5.文件夹
6.相对路径
7.删除原文件
8.文件类型 

file

确定文件内容
技术图片

常用选项

技术图片
file -b :不显示文件名称
例:
技术图片
file -L : 查看对应软链接对应文件的文件类型
例:
技术图片

以上是关于文件管理的主要内容,如果未能解决你的问题,请参考以下文章

massCode 一款优秀的开源代码片段管理器

如何管理在每个 git 版本中添加私有代码片段?

SnippetsLab for Mac 1.9 中文共享版 – 强大的代码收藏管理工具

如何使用Android片段管理器传递变量[重复]

Android:使用支持片段管理器时复制片段

YASnippet - emacs 的代码片段管理工具