1.对于文件管理的基本操作:
使用mv可以进行文件的移动。但是如果mv命令操作的目标和源在同一个文件系统中,文件中将会使用新的文件名来取代旧的文件名(旧的文件名将会找不到);如果将要操作的目标文件和源文件不在同一个文件系统下,mv就相当于使用cp(copy)和rm。
2.软链接和硬链接
在linux系统下,链接的方式分为两个情况:一个是软连接,一个是硬链接。使用“ls -l --color=auto”可以查看目录下的文件信息,其中浅绿色的就是链接。软链接通俗的讲就是链接套用链接,就是一个链接内部指向另外一个链接。
3.ls
ls+参数+目录/文件名(不能显示文件内容) ls -a 包含隐藏文件 ;ls -l 显示额外的信息;ls -R目录递归;ls -id目录和符号链接信息;ls -l文件分行显示;ls -S从大到小排序;ls -u 配合-t选项,显示并按atime从新到旧排序[使用] ;ls -U不排序按目录存放顺序显示。
4.文件通配符
* :匹配0个或者0个以上的字符
? :匹配任何单个字符
~ :显示当前用户的家目录
~username :显示username的家目录
~+ :当前的工作目录
~- :前一个工作目录
[0-9] :匹配单个数字的范围
[a-z]:匹配从a到Z下的字符 # 在匹配模式中假设一个文本文件(touch aaa)中有a,b,c,A,B,C,其排列顺序为a,A,b,B,c,C; [A-Z]: touch aaa={a,b,c,A,B,C} 搜索[A-Z]显示为A,b,B,c,C
;[string] :匹配列表中任何一个的字符串。
[^string]:匹配列表中所有字符以外的字符;在linux中 ^ 位于括号内是起到取反的作用,在行首是起到锚定行首的作用。
预定义的字符类 :可以使用man 7 glob查看帮助;[:digit:]:任意数字,相当于0-9.这仅仅相当于数字,调用时需要再添加一个中括号;[:lower:]任意小写字母;[:upper:]任意大写字母;[:alpha:]任意大写字母;[:alnum:]任意数字或者字母[:space:]空格;[:punct:] 标点符号;
5.stat可以查看文件的状态
文件的状态有三种时间状态:atime :访问时间,读取文件内容 ,但是在linux 6版本很多时候读取文件并不需要更改文件的ctime,为了提升系统性能优化,读取文件的时候,ctime不再发生变化。 mtime:修改时间,改变文件内容 ctime:改变时间,元数据发生变化。但是一般来说,当ctime的时间大于1天或者大于ctime时会自动更新变化。
6.cp 文件或者目录
源为一个文件时,目标为空时,cp成功并创建目标文件,把源文件内容填充至目标文件中;目标为文件且存在时,cp成功并覆盖原本存在的文件,在cp 后加参数i可以提示是否覆盖,或者使用\cp 使用原本的cp而不是别名的cp也可以直接覆盖;目标存在且为目录时,在目标文件下创建与源文件名相同的文件并将内容注入到目标文件。当源存在且为多个文件时,如果目标为空,报错,;目标存在且为文件时,报错;目标存在且为目录时,cp成功且把多个文件注入到目标目录下。当源为一个目录时,后面必须加参数-r,目标为空,创建一个相同的目录并把源目录下所有内容复制到目标目录下;目标存在且为一个文件时,报错;目标存在且为一个目录时,在目标目录下创建一个和源目录名称相同的子目录,并注入所有内容。 使用 cp -v可以查看cp的过程. cp -r就是当cp源为目录时,使用递归可以把目录下内容cp到目标目录下。