linux文件操作

查看目录中的文件信息

ls [可选项]

-l 显示出详细的信息

-h 显示出目录的大小,带单位
 h: human readable
 
-d 查看特定文件的属性

ll 相当于 ls -l  (但是 unix没有ll)

创建目录

mkdir [可选项 -p] [路径]  [自定义目录名]

-p   递归创建 如 d1/d2/d3
 p: parent

删除目录

rmdir [可选项] [目录名]

-rf  递归删除目录
 

查看目录及文件占用的内存大小

du -sh [目录名]
-a: all 包括所有文件,不仅仅是目录
-s: sumary 只统计每个参数所占用的空间的总大小
-h: human readable 

查看当前所在的目录

pwd
print working directory

切换工作目录

cd [可选项]
change Dirctory
.   当前目录
..  上级目录
~   用户的家目录
-   上个工作目录

创建文件

touch [可选项] [文件名]
touch 用来创建新文件, 如果文件已经存在了,就更新文件的时间标记

-a: 改变读取时间
-m: 改变修改时间
-r: 使用参考文件来记录
-d: 设置时间和日期

例: 指定文件的读取时间

touch -a -d [日期] [文件名]

查看文件的时间标识

stat [文件名]
读                                    时区                                          
Access: 2019-08-22 04:29:21.575475520 +0000
修改
Modify: 2019-08-22 04:29:21.575475520 +0000
文件属性
Change: 2019-08-22 04:29:21.575475520 +0000

每次touch 都会用当前的时间替换,access 和 modify 时间

拷贝,复制文件或目录

cp [选项] [源文件/目录] [目标文件/目录]

-r: recursive 递归的
-a: 复制时保留链接,文件属性,并递归的赋值整个目录

例: cp [文件1] [文件2]
例: cp [文件1] [文件2] 目录
复制单个文件可以同时改名
复制多个文件不能同时改名

剪切/改名

mv [选项] [源文件/目录] [目标文件/目录]
目标位置和源相同就是在改名

查看文件类型

linux中看后缀识别文件的类型是没用的

file [文件名]

删除

rm [选项] [文件或目录]
-f: 强制的
-r: recursive 递归

通配:
* 匹配0个或多个字符
? 匹配一个字符
例: 
rm *.log

查看文件内容

仅能查看文件的全部信息
cat -n [文件名]
-n: number 显示行号

从最后一行开始,倒着显示出全部文件内容, 不能显示行号
tac [文件名]

全屏分页显示文件内容

more [文件名]
空格: 向下翻页
b:    向上翻页
enter: 逐行滚动
q:    退出

less [文件名]

page down/up 翻页 

查看文件的部分内容

head [选项] [文件名]
默认查看10行
-n: 显示多少行

tail -n [文件名]
tail -f [文件名] 当文件内容发生变动,会动态的显示出来

tail -n +3 [文件名] 从第三行开始显示
tail -n -3 [文件名] 显示最后三行
head -n -3 [文件名] 不显示最后三行
head -n +3 [文件名] 显示前三行

查找可执行文件,并显示位置

which [命令/程序名]

查找文件路径,该文件的帮助文件路径, 并显示位置

whereis

查找文件

locate [文件名]
他是在一个每天不断更新的数据库中查找文件信息,
模糊匹配用户输入的文件名,查找的速度快, 
但是可以查找到已经删除的文件,
找不到新创建的文件, 所以在使用前使用  updatedb 手动更新数据库

find 查找文件或目录
find [查找范围] [查找条件] [查找动作]

-name: 按文件名称查找
-size: 按文件大小查找
-user: 按照文件所有者查找
-type: 按文件类型查找
-perm: 按文件权限查找
-mtime: 按文件的更新时间查找
-newer: 比某个文件更新查找

特殊查找
-o:      逻辑或
-not:    逻辑非, 在命令中可以用 ! 表示
-a:      逻辑与

文件名,支持通配

例: 查找到文件后, 顺道把他复制一份到 其他目录
find [查找范围] -name "XXX"  -exec cp -r {} /tem \;
{}  find的查找结果   \ 命令结束符号


查找属于目录的文件
find   /etc  -type d

查找属于文件的文件
find  /etc  -type f

find [范围] -mtime 4 : 表示四天前的那一天
find [范围] -mtime -4 : 表示四天内
find [范围] -mtime +4 : 表示四天前

制作压缩文件

  • zip

压缩

zip [自定义的压缩文件名] [文件1] [文件2] ...

压缩文件夹 -r 递归,否则压缩不全

解压

unzip -d [路径] [压缩文件名]
不加路径的话,默认是当前文件夹

  • gzip 不能对文件夹进行压缩

它压缩完的文件以 .gz结尾

gzip 可选项 [文件名]
-9: 1-9 压缩比例, 默认是6
-d:  用于解压缩文件
-c: 将输出重定向到标准输出

查看压缩文件的内容

zcat [文件名]

制作归档文件

将多个文件打包到一起,成为归档文件, 默认情况下归档文件不会被压缩,反而体积会比它囊括的全部文件大

tar 制作归档文件,释放归档文件
tar [选项] [归档文件名] [源文件/目录]

-c:  create 创建 .tar 结尾的归档文件
-x:  extract 解开 .tar 结尾的归档文件
-v: 输出详细信息,(解压了哪些文件)
-f: file 后面跟文件名,或者目录名
-t: list 查看归档文件中的内容
-p: 保存源文件的属性
-P: 保存绝对路径, 不建议使用


-z: 在创建归档文件的同时,使用gzip方式进行压缩
-j: 调用后bzip2的程序进行压缩
-J: 使用xz进行压缩


例: 
制作:
tar -cf [自定名字] [源]

查看tar 文件中的内容
tar -tf [tar文件]

-C: 在建包时,先进入指定的目录
tar cf c.tar -C /tmp a b    意思是先进入 /tmp目录, 将压缩成 c.tar

注意点:

  • 制作归档文件时,推荐使用相对路径
  • 使用z或者j进行压缩文件不需要加上 z j, tar自动识别
  • tar 可以对文件,也可以对目录进行操作, gzip bzip2 只能针对文件
posted @ 2019-08-25 21:30  赐我白日梦  阅读(337)  评论(0编辑  收藏  举报