1、创建空文件和刷新时间

 touch命令可以用来创建空文件或刷新文件的时间

touch [OPTION]... FILE...

 选项:

-a	仅改变atime和ctime
-m 仅改变mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss] 指定atimet和mtime的时间戳
-c 如果文件不存在,则不予创建

 示例:

[root@CentOS8 ~]# ll /etc/issue
-rw-r--r--. 1 root root 23 Jan 2 2020 /etc/issue
[root@CentOS8 ~]# touch /etc/issue
[root@CentOS8 ~]# ll /etc/issue
-rw-r--r--. 1 root root 23 Jan 21 19:39 /etc/issue
[root@CentOS8 ~]# stat /etc/issue
File: /etc/issue
Size: 23 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 134341451 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:etc_t:s0
Access: 2021-01-21 19:39:26.091042069 +0800
Modify: 2021-01-21 19:39:26.091042069 +0800
Change: 2021-01-21 19:39:26.091042069 +0800
Birth: - [root@CentOS8 data]# touch `date -d "-1 day" +%F_%T`.log
[root@CentOS8 data]# ls
2021-01-20_19:43:40.log
[root@CentOS8 data]# touch $(date -d "-1 year" +%F_%T).log
[root@CentOS8 data]# ls
2020-01-21_19:44:17.log 2021-01-20_19:43:40.log

 

2、复制文件和目录

 利用 cp(copy)命令可以实现文件或目录的复制

cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...

 选项:

-i	如果目标已存在,覆盖前提示是否覆盖。
-n 不覆盖,注意两者顺序。
-r,-R 递归复制目录及内部的所有内容
-a 归档,相当于-dR --preserv=all,常用于备份功能。
-d --no-dereference --preserv=links 不复制原文件,只复制链接名。
--preserv[ATTR_LIST]
mode:权限
ownership:属主属组
timestamp:
links
xattr
context
all
-p 等同--preserv=mode,ownership,timestamp
-v --verbose 显示复制过程
-f --force 如果目标存在,并且不能打开,删除,重新覆盖。
-u --update 只复制源比目标更新文件或目标不存在的文件
-b 目标存在,覆盖前先备份,默认形式为filename~,只保留最近的一个备份。
--backup=numbered 目标存在,覆盖前先备份加数字后缀,形式为filename.~#~,可以保留多个版本。
[root@CentOS8 ~]# cp ~ou/issue2 /data/issue_ou.bak
[root@CentOS8 ~]# ll ~ou/issue2 /data/issue_ou.bak
-rw-r--r--. 1 root root 0 Jan 21 21:30 /data/issue_ou.bak
-rw-rw-rw-. 1 ou ou 0 Jan 21 21:12 /home/ou/issue2
[root@CentOS8 ~]# cp -p ~ou/issue2 /data/issue_ou.bak2
[root@CentOS8 ~]# ll /data/
total 0
-rw-r--r--. 1 root root 0 Jan 21 19:44 2020-01-21_19:44:17.log
-rw-r--r--. 1 root root 0 Jan 21 19:43 2021-01-20_19:43:40.log
-rw-r--r--. 1 root root 0 Jan 21 21:30 issue_ou.bak
-rw-rw-rw-. 1 ou ou 0 Jan 21 21:12 issue_ou.bak2
[root@CentOS8 ~]# cp /etc/sysconfig/ /data/
cp: -r not specified; omitting directory '/etc/sysconfig/'
[root@CentOS8 ~]# cp -r /etc/sysconfig/ /data/
[root@CentOS8 ~]# ll /data/
total 4
-rw-r--r--. 1 root root 0 Jan 21 19:44 2020-01-21_19:44:17.log
-rw-r--r--. 1 root root 0 Jan 21 19:43 2021-01-20_19:43:40.log
-rw-r--r--. 1 root root 0 Jan 21 21:30 issue_ou.bak
-rw-rw-rw-. 1 ou ou 0 Jan 21 21:12 issue_ou.bak2
drwxr-xr-x. 7 root root 4096 Jan 21 21:32 sysconfig [root@CentOS8 ~]# cp -b /etc/fstab /data/issue
cp: overwrite '/data/issue'? y
[root@CentOS8 ~]# ll /data/
total 12
-rw-r--r--. 1 root root 0 Jan 21 19:44 2020-01-21_19:44:17.log
-rw-r--r--. 1 root root 0 Jan 21 19:43 2021-01-20_19:43:40.log
-rw-r--r--. 1 root root 709 Jan 21 22:11 issue
-rw-r--r--. 1 root root 709 Jan 21 22:11 issue~
-rw-r--r--. 1 root root 0 Jan 21 21:30 issue_ou.bak
-rw-rw-rw-. 1 ou ou 0 Jan 21 21:12 issue_ou.bak2
drwxr-xr-x. 7 root root 4096 Jan 21 21:32 sysconfig
[root@CentOS8 ~]# cp --backup=numbered /etc/fstab /data/issue
cp: overwrite '/data/issue'? y
[root@CentOS8 ~]# cp --backup=numbered /etc/fstab /data/issue
cp: overwrite '/data/issue'? y
[root@CentOS8 ~]# ll /data/
total 20
-rw-r--r--. 1 root root 0 Jan 21 19:44 2020-01-21_19:44:17.log
-rw-r--r--. 1 root root 0 Jan 21 19:43 2021-01-20_19:43:40.log
-rw-r--r--. 1 root root 709 Jan 21 22:12 issue
-rw-r--r--. 1 root root 709 Jan 21 22:11 issue~
-rw-r--r--. 1 root root 709 Jan 21 22:11 issue.~1~
-rw-r--r--. 1 root root 709 Jan 21 22:12 issue.~2~
-rw-r--r--. 1 root root 0 Jan 21 21:30 issue_ou.bak
-rw-rw-rw-. 1 ou ou 0 Jan 21 21:12 issue_ou.bak2
drwxr-xr-x. 7 root root 4096 Jan 21 21:32 sysconfig

 

3、移动和重命名文件

 mv命令可以实现文件或目录的移动和改名

 同一分区移动数据,速度很快:数据的位置没有变化。

 不同分区移动数据,速度相对慢:数据位置发生了变化。

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

 选项:

-i	交互式
-f 强制
-b 目标存在,覆盖前先备份

 利用rename可以批量修改文件名

rename [options] <expression> <replacement> <file>...

  

4、删除文件

 使用 rm 命令可以删除文件

 注意:此命令非常危险,慎用,建议用 mv 代替 rm

rm [OPTION]... FILE...

 选项:

-i	交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/

 删根示例:

[root@CentOS8 ~]# rm -rf /		不允许执行
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe [root@CentOS8 ~]# rm -rf /* 允许执行,危险行为!!

 删除特殊文件

#将名为 “/data -f” 的文件删除
[root@CentOS8 data]# rm -f -f #此方式错误
[root@CentOS8 data]# rm -- -f
[root@CentOS8 data]# rm ./-f
[root@CentOS8 data]# rm /data/-f [root@CentOS8 data]# touch '~'
[root@CentOS8 data]# ls
'~' 2020-01-21_19:44:17.log 2021-01-20_19:43:40.log backup2021-01-21 -f issue issue~ issue.~1~ issue.~2~ issue_ou.bak issue_ou.bak2 rootdir sysconfig
[root@CentOS8 data]# rm -f ~
rm: cannot remove '/root': Is a directory
[root@CentOS8 data]# rm -- ~
rm: cannot remove '/root': Is a directory
[root@CentOS8 data]# rm -f ./~
[root@CentOS8 data]# ls
2020-01-21_19:44:17.log 2021-01-20_19:43:40.log backup2021-01-21 -f issue issue~ issue.~1~ issue.~2~ issue_ou.bak issue_ou.bak2 rootdir sysconfig

 rm虽然删除了文件,但被删除的文件仍然可能被恢复,在安全要求较高的场景下,可以使用shred安全删除文件。

 shred格式

shred [OPTION]... FILE...

 选项:

-z	最后一次覆盖添加0,以隐藏覆盖操作。
-v 能够显示操作进度
-u 覆盖后截断并删除文件
-n # 指定覆盖文件内容的次数(默认值是3次)

 示例:

[root@CentOS8 ~]# shred -zvun 5 passwords.txt
shred: passwords.txt: removing
shred: passwords.txt: renamed to 0000000000000
shred: 0000000000000: renamed to 000000000000
shred: 000000000000: renamed to 00000000000
shred: 00000000000: renamed to 0000000000
shred: 0000000000: renamed to 000000000
shred: 000000000: renamed to 00000000
shred: 00000000: renamed to 0000000
shred: 0000000: renamed to 000000
shred: 000000: renamed to 00000
shred: 00000: renamed to 0000
shred: 0000: renamed to 000
shred: 000: renamed to 00
shred: 00: renamed to 0
shred: passwords.txt: removed
[root@CentOS8 ~]# ls passwords.txt
ls: cannot access 'passwords.txt': No such file or directory

  

5、目录操作

5.1、显示目录树tree

 选项:

-d	只显示目录
-L level 指定显示的层级数目
-P pattern 只显示由指定wild-card pattern匹配到的路径

5.2、创建目录mkdir

 选项:

-p	存在于不报错,且可自动创建所需的各目录
-v 显示详细信息
-m MODE 创建目录时直接指定权限

5.3、删除空目录rmdir

 选项:

-p	递归删除父空目录
-v 显示详细信息

 注意:rmdir只能删除空目录,如果想删除非空目录,可以使用rm -r命令,递归删除目录树。

Linux部分文件管理类命令的更多相关文章

  1. Linux上的文件管理类命令(2)

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示: wc 统计文件中的字节数.单词数.行数.并将统计结果显示输出 -c, --bytes 打印字节数 [root@qingchen ...

  2. Linux文件管理类命令及命令别名

    文件查看类命令: cat: tac: 从文件尾部开始显示 分屏显示: more [option] 文件名: 查看至文件尾部会退出 空格为翻页 less [option] 文件名: 查看至文件尾部不退出 ...

  3. 熟练使用Linux进程管理类命令

    进程管理类命令 – ps命令 ps命令主要用于查看系统的进程 该命令的语法为:ps [参数] ps命令的常用参数选项有: -a:显示当前控制终端的进程(包含其他用户的). -u:显示进程的用户名和启动 ...

  4. 3-1 Linux文件管理类命令详解

    根据马哥Linux初级 03-01整理 1. 目录管理 ls cd pwd mkdir rmdir tree 2. 文件管理 touch stat file rm cp mv nano 3. 日期时间 ...

  5. linux初级学习笔记四:Linux文件管理类命令详解!(视频序号:03_1)

    本节学习的命令:cat(tac),more,less,head,tail,cut,sort,uniq,wc,tr 本节学习的技能:目录管理 文件管理 日期时间 查看文本 分屏显示 文本处理 文件管理命 ...

  6. Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示

    目录管理命令ls:列出指定目录下的内容格式: ls [OPTION]... [FILE]...   -a:显示所有文件包括隐藏文件   -A:显示除.和..之外的所有文件   -l,--long:显示 ...

  7. Linux的管理类命令及其使用方法

    文件操作相关有一些命令可以帮助我们"修剪"之前看到的文件树. $touch a.txt 如果a.txt不存在,生成一个新的空文档a.txt.如果a.txt存在,那么只更改该文档的时 ...

  8. Linux常见文件管理命令

    1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示.(1)目录管理命令——ls:列出指定目录下的内容格式:ls [OPTION]... [FILE]... -a:显示所有文件包 ...

  9. Linux文件管理相关命令

    Linux文件管理相关命令   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...

  10. Linux下的文件查找类命令(转载)

    如何快速有效的定位文件系统内所需要查找的文件呢?Linux为我们提供了一些文件查找类的命令,我们需要掌握以下几个命令: http://blog.csdn.net/sailor201211/articl ...

随机推荐

  1. js实现大文件上传——分片上传方法

    当前端在开发过程中遇到上传文件需求,如果是上传头像.图片小文件之类的,可以正常按上传流程处理.但是当遇到上传大文件需求时,几个G或者十几个G,那么需要将这么大的文件分割成许多小片段分别上传,这种实现思 ...

  2. 在MyBatis-Plus整合dynamic-datasource @DS失效

    因为是事务导致的 解决方案: 1.删除事务 2.使用分布式事务 3.修改事务的传播机制 3.使用DS的本地事务 @DSTransactional 但切记不可和Spring的事务共存 附传播机制 事务传 ...

  3. 如何修改Mac文件默认打开方式?

    熟悉Mac电脑的用户都知道,在 OS X 中,Finder 存储的文件总会以指定的某个默认应用程序打开,比如图片类型的文件默认以「预览」打开.但由于经常需要使用图片编辑工具 PS打开图片类型的文件,每 ...

  4. 044_Schedule Job 间隔时间自动执行

    需求:系统上的标准功能是能够设置间隔一天的执行,或者是写完代码着急测试我们写个5分钟后执行的: 但是遇到要求没间隔一小时或者十分钟执行,该怎么处理呢? global class **_Retrieve ...

  5. pytorch学习笔记(6)--神经网络非线性激活

    如果神经元的输出是输入的线性函数,而线性函数之间的嵌套任然会得到线性函数.如果不加非线性函数处理,那么最终得到的仍然是线性函数.所以需要在神经网络中引入非线性激活函数. 常见的非线性激活函数主要包括S ...

  6. jenkins +docker+python接口自动化之docker下安装jenkins(一)

    1.下载jenkins启动docker服务之后,首先搜索可用的jenkins镜像 docker search jenkins 第一个是官方版本,但是已标明废弃了,让用第二个jenkisn/jenkin ...

  7. 实验一 密码引擎-1-OpenEuler-OpenSSL编译

    1. 下载最新的OpenSSL源码 2. 用自己的8位学号建立一个文件夹,cd 你的学号,用pwd获得绝对路径 3. 参考https://www.cnblogs.com/rocedu/p/508762 ...

  8. iOS用runtime给一个类动态添加方法 ---class_addMethod

    先介绍下class_addMethod这个fangfa   /**   * Adds a new method to a class with a given name and implementat ...

  9. not eligible for getting processed by all BeanPostProcessors

    描述 这个BUG大的起源是我上线以后,在后台看日志的时候发现一行奇怪的INFO日志: 2022-06-09 23:34:24 [restartedMain] [org.springframework. ...

  10. java中list对象不同属性去重合并

    需求:将list中对象的不同属性对应的值去重后,赋值给另一个属性! 实现效果如下图: