linux-03 文件操作
一、 文件操作命令
命令格式:
命令 [-选项] [参数]
创建
创建目录:
mkdir
(-p可以递归创建)创建文件:
touch
生成链接文件:
ln -s [old][new] -s
生成软链接;类似window快捷方式;软链接的文件权限都是rwxrwxrwx;
删除
删除空目录:
rmdir
删除文件:
rm -rf
文件或目录r
强行删除,f
强制执行;
shopt -s extglob
执行之后可以执行:rm -rf !(排除的某个文件不被删除)
shopt -s
,查看extglob
是否为on
复制
复制:
cp -rp [old][new]
r
复制p
保留文件属性;剪切或重命名:
mv [old][new]
查看文件
cd
切换目录;pwd
显示当前目录ls
显示所有文件ll
显示所以文件包含文件属性;
三、显示文件内容
cat
正序显示; -n显示行号;tac
反向列示more
分页显示(f或空格翻页,enter换行,q或Q退出)less
分页显示,可以向上翻页;head
显示文件前面几行;(在文件前面添加-n,指定行数)tail
显示文件后面几行(-n,指定行数),-f 支持动态查看,文件刷新即持续更新
四、权限管理命令
chmod
:改变文件或目录权限(/bin/chmod)chmod [{ugoa}{+-=}{rwx}] [文件或目录]
[mode=421] [文件或目录]
-R
递归修改;权限的数字表示:r=4 w=2 x=1; 示例:rwxrw-r-- 764
示例:
chmod g+w testfile
赋予testfile文件所属组添加写权限chmod -R 777 testdir
修改testdir目录下所有文件具有全部权限;chown
:改变文件或目录的所有者(/bin/chown)chown [用户] [文件或目录]
chgrp
:改变文件或目录的所属组(/bin/chgrp)chgrp [用户组] [文件或目录]
umask
:显示、设置文件的缺省权限(shell内置)umask [S]
-S以 rwx形式显示新建文件缺省权限
五、压缩解压
gzip文件
gzip [文件]
压缩文件,压缩后格式.gz;gunzip [压缩文件]
解压压缩.gz的文件;
tar.gz文件
tar [-zcf] [压缩后文件名] [目录]
打包目录,格式.tar.gz
-c
创建tar包,-x
解包-v
显示详细信息-f
指定文件名-z
通过gzip压缩或解压-t
不解压查看包内容
#解压:x 解包,z解压缩,-f,-v;
# 压缩:
tar -zcvf build.tar.gz ./build
# 解压:
tar -zxvf build.tar.gz
# 打包当前文件夹所有文件
tar -cvf build.tar *
# 查看当前包的内容
tar -tvf build.tar
注意:添加了z,手动打开压缩包看到的只是一个文件,该文件需要再次解压,如果是直接输入zxvf命令解压则不用在意;
# 下载包rar, 并安装
wget http://www.rarlab.com/rar/rarlinux-x64-5.3.0.tar.gz
tar -xf rarlinux-x64-5.3.0.tar.gz
cd rar
# 制作
make
排除某个文件夹
--exclude=dir
# 不使用排除压缩
tar -zcvf build.gz *
# 使用排除压缩
tar -zcvf build.gz --exclude=node_modules *
zip文件
zip [-r] [压缩后的文件名] [文件或目录]
压缩文件或目录,格式zip;
-r
压缩目录;解压:
unzip [压缩文件]
bzip2文件
bzip2 [-k] [文件]
压缩后格式.bz2;-k产生压缩文件后保留原文件;
解压:bunzip2 [-k] [压缩文件]
-k
解压缩后保留原文件;
tar -xjf Japan.tar.bz2
j可以解压bzip2的文件;
rar文件
解压rar文件
压缩: rar a 压缩文件 ./*
解压:
rar x etc.rar
unrar -e etc.tar
六、搜索
find
:文件搜索(/bin/find)find [搜索范围] [匹配条件]
find /etc -name init
在目录etc查找文件init -iname可以不区分大小写
find / -size +204800
在根目录下查找大于100M的文件 +n 大于 -n 小于 n 等于
find /home -user shenchao
在根目录下查找所有者为shencao的文件 -group根据所属组找
find /etc -cmin -5
在etc下查找5分钟内被修改过属性的文件和目录
-amin
访问时间-cmin
文件属性-mmin
文件内容find /etc -size +163840 -a -size -204800
查找大于80MB小于100MB文件 -a 两个条件同时满足 -o满足一个
find /etc -name inittab -exec ls -l {} \
;查找initab文件并显示其详细信息 -exec/-ok 命令 {} \对搜索结果执行操作
-type
根据文件类型查找; f文件 d目录 l软链接-inum
根据i节点查找;locate
:在文件资源库中查找(/usr/bin/locate)locate 文件名
grep
:在文件中搜寻字串匹配的行并输出grep -iv [指定字串] [文件]
-i不区别大小写 -v排队指定字串grep Vue app.js
在app.js中查找Vue字符串;