文件和目录
查:(ls,cat,more,less,head,tail,rev,tac,find, stat)
ls -a 查看目录中所有的文件,包括隐藏文件(以.开头的)
ls -l 查看目录中文件的详细信息
ls -t 以时间先后顺序显示结果
ls -h 显示文件大小
ls -d 查看目录信息
ls -i 显示inode节点
cat 查看文件文件,只显示最后一页,例如cat /etc/passwd
more 分屏显示,按空格键翻页,无法前翻
less 可上下滚动查看文件内容
head 默认只显示前10行
head -20 /etc/passwd 显示前20行
tail 默认显示最后10行
tail -20 /etc/passwd 显示最后20行
rev 使文件内容左右颠倒
tac 使文件内容前后颠倒
ls -l /bin/bash
-rwxr-xr-x 1 root wheel 430540 Dec 23 18:27 /bin/bash
第一部分需要拆开 这里只讲第一个 短横线, 后面的九个字符查看权限部分 - rwx r-x r-x
-: 文件类型
d: 目录
l:链接文件
c: 专门设备文件
b: 块设备文件
p: 先进先出
s: 套接字文件
查找find
查找文件或目录 ----- find 目标目录 -name 文件名
一次查找多个文件(添加-o参数) ----- find / -name 1.txt -o -name 2.txt -o -name 3.txt ...
查找指定类型 ----- find /tmp/ -type d(f, b, c, d, l, s)
查找指定大小 ----- find /root/ -size 1M 注意文件要大写
+1M 显示大于1M
-1M 显示小于1M
查找指定拥有者|组 ----- find /root/ -user jingwang 查找jingwang的文件
find /root/ -group 运行维护 查找运行维护组的文件
访问或执行时间大于/小于n天的文件 ----- find 目标目录 -atime +n/-n
写入、更改inode属性(例如更改所有者、权限或者链接)时间大于/小于n天的文件
----- find 目标目录 -ctime +n/-n
写入时间大于/小于n天的文件 ----- find 目标目录 -mtime +n/-n
/var/ 目录下,最近一天内变更的文件 ----- find /var/ -type f -mtime -1
/root/ 目录下一小时内变更的文件 改变了的是默认天time为分min(还有 -maxdepth -mindepth -mmin -mount -mtime)
----- find /root/ -type f -mmin -60 同样是m修改 改变了的是默认天time为分min
搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备 ----- find / -xdev -name \*.rpm
查找结果执行指令连用
find /path/ -name "param" -exec rm -f {} \; 注意这里的是反斜杠
find /path/ -name "param" -ok rm -f {} \; 更有好的交互方式
查看文件|目录属性 ----- stat 目录|文件
文件的 Access time也就是 ‘atime’ 是在读取文件或者执行文件时更改的。
文件的 Modified time也就是 ‘mtime’ 是在写入文件时随文件内容的更改而更改的。
文件的 Create time也就是 ‘ctime’ 是在写入文件、更改所有者、权限或链接设置时随inode的内容更改而更改的。
因此,更改文件的内容即会更改mtime和ctime,但是文件的ctime可能会在 mtime 未发生任何变化时更改,
例如,更改了文件的权限,但是文件内容没有变化。
增:(mkdir ,touch,vim)
mkdir aminglinux 创建一个aminglinux目录
mkdir a b c 依次在当前目录下创建a b c 同级目录
mkdir -p aa/bb/cc 递推创建aa bb cc目录,aa目录包含bb,bb目录包含cc
touch a.txt 创建一个a.txt文件
删:(cp, mv,rm)
cp a b 将文件a复制一份成b
cp -r 复制目录,默认不加-r只能复制文件
mv 移动或改名
rm 删除文件
rm -r 删除目录,默认不加-r只能删除文件
rm -f 强制删除,不提示
改(查看权限部分):(chown)
语法: chown [ -R ] 账户名 文件名 chown [ -R ] 账户名:组名 文件名
链接
## 硬链接
ln 源文件或目录 目标文件或目标目录
linux会在文件的存放目录中(data_block)添加一个新的文件名
而指向的inode编号与原始文件的inode编号相同.
原始数据始终都是只有一份,只是两个文件名同时引用了一个inode编号
## 软连接
ln -s 源文件或目录 目标文件或目标目录
linux会在文件的存放目录中(data_block)添加一个新的文件名
同时inode编号也全新的,只是新的inode中记录的是原始文件的路径名称
硬链接和软连接的差别
1. inode 硬链接不产生新的inode,软链接则会使用一个新的inode
2. 限制 硬链接只能作用于文件,且不能跨分区;软链接即可作用于目录又可以是文件,可跨分区
3. 删除 删除源文件后,硬链接依然可以使用,而软连接则见血
标准linux 目录
/ 根目录
/boot 用于存放系统的启动文件
/var 用于存放系统中经常需要变化的一些文件,例如日志
/home 普通用户的家目录
/root 超级用户的家目录
/bin 用户存放普通用户可执行的命令
/sbin 用户存放超级用户可执行的命令
/etc 用于存放配置文件
/tmp 临时目录
/mnt 挂载目录
/dev 设备文件的目录
/opt 第三方应用软件的安装目录