首页 > 代码库 > 文件、目录——Linux基本命令(5)
文件、目录——Linux基本命令(5)
1. 文件名规则
(1)文件名最长255个字节
(2)包括路径在内文件名称最长4095个字节
(3)文件颜色
蓝色à目录
绿色à可执行文件
红色à压缩文件
浅蓝色à链接文件
灰色à其他文件
(4)除了斜杠和NUL(就是空格键),所有字符都有效。但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们。
2.文件系统结构
/boot:引导文件存放目录,内核文件、引导加载器都存放于此目录
/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件
/lib64:专用于*86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
b:block device随机访问
c:characterdevice 线性访问
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr:universalshared,read-only data 只读文件
/var:variable data files 可写文件
cache:应用程序缓存数据目录
lib:应用程序状态信息数据
local:专用于为/user/local下的应用程序存储可变数据
lock:锁文件
log:日志目录及文件
opt:专用于为/opt下的应用程序存储可变数据
run:运行中的进程相关数据,通常用于存储进程pid文件
spool:应用程序数据池
tmp:保存系统两次重启之间产生的临时数据
/proc:用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
echo’- - -’ > /sys/class/scsi_host/host2/scan
Vmware加硬盘重新扫描
/selinux:securityenhanced Linux,selinux相关的安全策略等信息的存储位置
3. Linux上的应用程序的组成部分
4. Linux下的文件类型
5. 绝对路径和相对路径
绝对路径:
以正斜杠开始(从根开始)
完整的文件的位置路径
可用于任何向指定的一个文件名的时候
相对路径名:
不以斜线开始
指定相对与当前工作目录或某目录的位置
可以作为一个简短的形式指定一个文件名
基名:basename
目录名:dirname
6. 更改目录
cd改变目录
使用绝对或相对路径:
cd /home/wang/
cd home/wang
切换至父目录(上级目录):cd ..
切换至当前用户的主目录:cd
切换至以前的工作目录:cd -
选项: -P
相关的环境变量:
PWD:当前目录路径
OLDPWD:上一次目录路径
7. 列出目录内容
ls列出当前目录的内容或指定目录
用法:ls[options] [files_or_dirs]
示例:
ls-a 显示所有文件
ls-A 显示所有文件,除.和..文件
ls-l 长列出
-rw-r--r--.1 root root 2193 Jul 14 17:28 passwd
文件类型|owner权限group权限other权限|硬链接数|owner|group|文件大小(bytes)|mtime|文件名
ls-R 递归(即如果文件夹里有文件可以被展开列出来)
ls-ld 显示指定目录的详细信息。
ls-1 竖显示
ls -S 按文件大小降序排列
ls-t 按修改时间(mtime)从新到旧排列
ls-ut 按访问时间(atime) 从新到旧排列
ls-U 按文件存放的先后顺序
ls-X 按文件后缀排序
ls-i 显示文件的inode号
ls-Z 显示文件的context值
8. 时间戳
statfilename查看文件信息
atime 访问时间
mtime 文件数据修改时间
ctime 文件元数据修改时间
(PS:元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode...)等等。)
touchfilename当文件不存在时,则创建一个空文件,名为filename
当文件已存在时,则更新期时间戳
-a 仅更新atime,ctime
-m 仅更新mtime, ctime
touch filename 更新全部时间戳。
9. 复制文件和目录
cp SRC DEST
源 目的地
规则:
如果目标目录下还有一个目录与源文件同名,则无法复制:
-i 覆盖前提示
-n不覆盖
-r-R 递归 (复制文件夹目录及文件夹内部的所有内容)
-d复制软链接属性
-p= --perserv=mode,owner,timestamp
-a包含-dr --perserv=all
-f当覆盖时,如目的文件的缺少写权限时,强制删除目的文件,并新建再填充内容。当有-n时,无效
-v可以讲进度过程显示出来
(PS:我们在复制文件或文件夹的时候一般都需要加上 -a)
10. 移动
mv
-i 覆盖前提示
-f 什么都不提示,强制覆盖,抵消-i的作用
批量改名 rename ‘.txt‘ ‘.doc‘ *.txt (先写将什么格式改为什么格式,再写改哪些文件)
用这种方式将所有txt结尾的文件改为doc结尾的文件
11. 删除
rm
-i 覆盖前提示
-f 不提示,强制覆盖,抵消-i的作用
-r 递归
(PS:rm -rf *删除当前目录下的所有文件,这个命令很危险。删除的文件一般都不能恢复!不要随便尝试。)
12. 目录
(1)创建目录
mkdir创建目录
-p递归创建(就是可以一次创建多级目录)
-mmode 创建时指定权限
(2)删除空目录
rmdir删除空目录
-p递归删除空目录
13. 创建文件或修改文件时间
touch
当文件不存在时,则默认创建一个空文件
-c 当文件不存在时,不创建
当文件存在时,
默认或-c 更新全部时间戳
-a更新atime和ctime
-m更新mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime的时间戳
如图,修改时间戳
14. 文件通配符
*匹配零个或多个字符
?匹配任何单个字符
~ 当前用户家目录
~mage用户mage家目录
~+当前工作目录
~-前一个工作目录
[]代表括号之间的范围,比如[0-9]可以代表0-9之间的任意一个数字,[a-z]可以代表a-z之间的任意一个字母,字母区分大小写。
[0-9] 匹配数字范围
(使用touch创建文件时,使用{}引用范围)
[a-z] 字母
(ps:字母是按照先小写再大写的顺序排列的,如:aAbBcCdDeE)
[xyz] 匹配列表中的任何的带xyz的一个字符
如图,分别匹配以adh开头的所有文件,和以hzi开头的所有文件
[^xyz] 匹配列表中的所有字符以外的字符
如图,匹配除了以adh开头的所有文件,和除了以hzi开头的所有文件
[:digit:] 任意数字,相当于0-9
[:lower:] 任意小写字母
[:upper:] 任意大写字母
[:alpha:] 任意大小写字母
[:alnum:] 任意数字或字母
[:blank:] 水平空白字符
[:space:] 水平或垂直空白字符
[:punct:] 标点符号
[:print:] 可打印字符
[:cntrl:] 控制(非打印)字符
[:graph:] 图形字符
[:xdigit:] 十六进制字符
(注意:以上使用时都应注意需加两个[],因为其本身就带一个[])
本文出自 “Ty_endless” 博客,请务必保留此出处http://tyendless.blog.51cto.com/12435756/1951568
文件、目录——Linux基本命令(5)