本博文主要介绍如何使用命令管理Linux的文件,首先我们先看一下Linux文件系统的文件层次结构:
目录类型有:静态、动态或可变、永久、运行时
下面详细介绍各个文件的作用:
/bin 二进制可执行命令,系统所需的配置命令
/boot 开始启动过程所需的文件
/dev包含特殊的设备文件,工系统用于访问硬件
/etc 系统管理和配置文件
/home普通用户存储其个人数据和配置文件的主目录,比如用户user的主目录就是/home/user,可以用~user表示
/root(超级用户)系统管理员的主目录
/run 自上一次系统启动以来启动的进程的运行时数据。包括进程ID文件和锁定文件,此目录中的内容在重启时重新创建。
/sbin系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp供临时文件使用的全局可写空间。10天内未访问、未更改或未修改的文件将自动从该目录中删除。还有一个临时目录/var/tmp,该目录中的文件如果在30天内未曾访问、更改或修改过,将被自动删除
/usr最庞大的目录,安装的软件、共享的库,包括文件和静态只读程序数据。其中重要的子目录有:/usr/bin用户命令,/usr/sbin系统管理命令,/usr/local本地自定义软件
/var特定于此系统的可变数据,在系统启动之间保持永久性。动态变化文件(如:数据库、缓存目录、日志文件、打印机后台处理文档和网站内容等)
/lib根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件。这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间。
大体上明白了Linux文件的结构体系,下面主要介绍操作文件的常用命令:
Pwd命令:显示当前所在的工作目录
Ls命令:显示目录中的文件
Ls –l命令:这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令。
Ls –a命令:显示当前目录下的所有文件及文件夹包括隐藏的文件
Ls –al命令:显示当前目录下的所有文件及文件夹包括隐藏的文件,并显示详细信息,详细信息包括大小,属组,创建时间
Ls –R命令:递归处理,将查看指定目录下的所有文件及子目录。
绝对路径:从根开始描述目录的路径
相对路径:从当前位置描述路径
注意:文件和路径是区分大小写的
一个文件路径不超过4095字节,用/分割的每个部分不超过225字节
Touch命令:创建一个空文件,或修改文件的时间戳
Cd 命令:更改工作目录,cd后可以家相对路径,也可以加绝对路径
每一个目录都有一个隐藏目录 .. ,表示上一级目录 cd ..表示回到上一级目录
~,标书当前用户的注目录
-,表示最近一次使用过的目录
Mkdir命令:创建目录,创建目录时,要确保原先不存在相同的目录
Mkdir –p:可以一次性创建路径上所有新的目录
Cp命令:复制文件和目录,复制文件时,时间戳会被重写,表示文件刚刚被修改过;可以将多个文件同时复制到一个目录里;可以将整个目录复制到另一个目录下,但需要添加-r参数;可以同时将多个目录复制到一个目录下;-v参数可以将复制了那些文件显示到终端上来
Mv命令:移动或重命名文件
Rm命令:删除目录或文件,可以直接删除单个文集;也可以删除目录,但需要加上-r参数;-i参数可以开启交互,系统会询问是否删除每个文件
Rmdir命令:删除空的目录,如果目录时空的,那么可以使用rmdir删除;如果目录内有文件或子目录,那么rmdir将无法删除该目录
使用路径名扩展匹配文件名:
文件通配符:*由零个或更多字符组成的任何字符串
?任何一个字符
~当前用户的主目录
~username username用户的主目录
~+当前工作目录
~-上一工作目录
[abc…]扩起的类中的任何一个字符
[!abc…]不在扩起的类中的任何一个字符
[^abc…]不在扩起的类中的任何一个字符,同上
[[:alpha:]]任何字母字符
[[:lower:]]任何小写字符
[[:upper:]]任何大写字符
[[:digit:]]任何数字,即0-9
命令替换:
$(command)可以将command执行的结果作为内容,也可以使用’command’
防止参数被扩展:两个单引号之间的任何字符都视为常规字符;\后的字符被视为常规字符