网站首页 » 网站运营 » Linux » Centos 7(Linux)文件增删改查操作
上一篇:
下一篇:

Centos 7(Linux)文件增删改查操作

在 Linux 中文件的增删改查操作一个都不能少,这也是你经常用到的命令行,所以下面就给大家整理出来。让你在需要他的时候不用求爷爷,告奶奶,众里寻它千百度,因为一切尽在云库!

增(create)

添加目录,添加文件。有添加目录用 mkdir。添加文件用 touch。

创建目录 mkdir

//在当前目录下创建名为yunkus.com的目录
mkdir yunkus.com

//在指定目录下创建名为yunkus.com的目录(使用绝对路径),比如在 /home/var/ 下创建目录
mkdir /home/var/yunkus.com

//同时创建多个目录
mkdir test1 test2 test3

//在指定目录下创建多个目录(使用绝对路径),比如在 /home/var/ 下创建目录
mkdir /home/var/test1 test2 test3

如果要创建的目录已经存在,那么会被提示:

提示

mkdir: cannot create directory ‘test’: File exists

当你在一个不存在的路径目录下创建文件时,比如系统存在路径目录 /home/yunkus/ ,而 yunkus 下是不存在 yk 这个目录的,但却在 yk 这个目录下创建 test 文件,会提示:

提示

mkdir: cannot create directory ‘/home/yunkus/yk/test’: No such file or directory

创建多级目录

// 在当前创建目录及其子目录
mkdir -p yunkus/test

//在指定目录下创 yunkus目录及其子目录
mkdir -p /home/var/yunkus/test

不仅仅是两级三级或者更深都是可以的。并且加了-p 之后即使你要创建的目录已经存在了也不会像上面那样出现提示。所以你可以在你的命令行追加 -p 参数,不管你创建的是一级目录,还是含有子目录的目录都不会出问题。

创建文件 touch

选项 套路 作用
-a touch -a file 改变档案的访问时间记录。
-c 不会建立新的档案。与 –no-create 的效果一样。
-d touch -d time file 设定时间与日期,可以使用各种不同的格式。
-f 已被费弃。
-m touch -m file 改变档案的修改时间记录。
-r touch -r file1 file2 使用参考文档的时间记录。
-t touch -t time file 设定档案的时间记录,格式与 date 指令相同。
–no-create 不会建立新档案。
–-help touch –help 列出指令格式。
–-version touch –-version 列出版本讯息。
// 在当前目录创建 test.txt 文件
touch test.txt

// 创建多个文件
touch test1.txt test2.txt

//修改访问时间
touch -a test.txt
//查看访问修改文件的时间
stat test.txt

// 更改为自定义格式、自定义时间戳(更改访问时间、修改时间)
touch -d '18-May-2017' test.txt

// 更改修改时间
touch -m test.txt

//修改 test1.txt 为 test2.txt 文件的时间戳。
touch -r test1.txt test2.txt

// 更改为自定义时间戳
touch -t 201703031558.28 test.txt

删除 delete

rm 命令可以用于删除文件及文件夹,可以同时一个或者多个文件/文件夹,而对于链接文件,只删除链接,不影响原文件。

选项 套路 作用
-d 删除可能仍有数据的目录 (只限超级用户)
-f rm -f file 略过不存在的文件,不显示任何信息
-i rm -i file 进行任何删除操作前必须先确认
-r rm -r file 同时删除该目录下的所有目录层(递归删除目录)
-v rm -v file 显示删除目录详细情况
// 删除文件
rm test.txt

// 删除目录(不带 -r 可能会无法删除目录),通常会提示
// rm: cannot remove ‘test’: Is a directory
rm -r test

// 如果是同时删除目录和文件时(文件可以正常删除,但目录无法删除,仍然提示rm: cannot remove ‘test’: Is a directory)
rm test test.txt

//删除当前目录下的所有文件,这个命令行得谨慎使用,有可能一个不留神,把一些不该删除的东西删除了,所以后面跟的路径得注意下
rm -rf *

改 update

文件的更改可以有重命名,移动等操作,下面是几个简单的例子。

// 将目录 test1 改为 test2
mv test1 test2

// 将/test1目录移动到 /home/ 下,并重命名为test2
mv /test1 /home/test2

// 修改文件/目录名(两种方法 touch 或者 rename)
touch test1 test2
rename test1 test2 test1

查 retrieve

文件查找的命令主要有 find 和 grep。find 用于查找文件,grep 用于查找文件内容的行

文件查找 find

选项 套路 作用
-name find -name “fileName” 按照文件名来查找文件。
-type find -type d 查找当前目录下的所有目录。
-user find -user “userName” 按照文件归属来查找文件。
-perm find -perm 777 按照文件权限来查找文件。
-group rm -group “groupName” 进行任何删除操作前必须先确认
-amin rm -amin -n 查找系统中最后N分钟访问的文件
-atime rm -atime -n 查找系统中最后n*24小时访问的文件
-cmin rm -cmin -n 查找系统中最后N分钟被改变文件状态的文件
-ctime rm -ctime -n 查找系统中最后n*24小时被改变文件状态的文件
-mmin rm -mmin -n 查找系统中最后N分钟被改变文件数据的文件
-mtime rm -mtime -n 查找系统中最后n*24小时被改变文件数据的文件
//查看某个文件,注意权限问题
find -name test

//查看录前目录下文件名中含有字符串 yun 的文件,*为通配符,可以按需要使用
find -name '*yun*'

//在当前目录下查看所有目录并排序
find -type d | sort

文件内容查找 grep

// 在指定文件中(一个或多个)查找并出含字符串为 test 的行
grep 'test' text1.txt text2.txt

//在以t开头的文件中查找并出含字符串为 test 的行
grep 'test' t*

文件解压缩

选项 套路 作用
-c tar -cf name.tar files 建立压缩存档
-x tar -xf name.tar 解压存档
-f tar -cf name.tar 存档名称。注意:这个参数是最后一个参数,后面只能接存档名。
-u tar -uf name.tar file 更新源存档中的文件
-r tar -rf name.tar files 向存档文件最后追加文件
-z tar -zcvf name.tar.gz files 是否需要用gzip压缩
-v tar -cvf name.tar files 显示压缩过程
–help tar –help 帮助
–usage tar –usage 帮助,同–help
// 压缩:目标目录 /home/var/yunkus 目录,压缩包名为yunkus.tar.gz,存放目录/home/var,并且将其用gzip压缩
tar -zcvf /home/var/yunkus.tar.gz /home/var/yunkus

// 只压缩文件名中含有 yk 字符串且后缀名为.txt 的文件,并且将其用gzip压缩
tar -czf name.tar.gz yk*.txt

// 只压缩后缀名为.jpg的文件,并且将其用gzip压缩
tar -czf name.tar.gz *.jpg

// 解压到指定目录(目录得存在,注意:C 是大写,dir 为目录名或者是一个已存在的路径)
tar -xf name.tar -C dir

// 解压到当前目录
tar -zxvf name.tar.gz

 

如果觉得命令执行后,提示文字太多,那可以不要参数 v

  • 微信扫一扫,赏我

  • 支付宝扫一扫,赏我

声明

原创文章,不经本站同意,不得以任何形式转载,如有不便,请多多包涵!

本文永久链接:http://yunkus.com/centos7-file-create-retrieve-update-and-delete/

Leave a Reply

Your email address will not be published. Required fields are marked *

评论 END