创建空文件和刷新时间 touch

  • touch命令可以用来创建空文件或刷新文件的时间
  • touch 存在的文件刷新时间,不存在的文件创建空文件

生成指定日期的日志文件

[root@C8-1 ~]# date
Wed Jun 17 09:35:43 EDT 2020
[root@C8-1 ~]# touch `date -d "-1 day" +%F_%T`.log
[root@C8-1 ~]# ls
2020-06-16_09:36:55.log anaconda-ks.cfg linux.txt win.txt
[root@C8-1 ~]# touch $(date -d "1 year" +%F_%T).log
[root@C8-1 ~]# ls
2020-06-16_09:36:55.log 2021-06-17_09:37:53.log anaconda-ks.cfg linux.txt win.txt

touch 选项说明

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

复制文件和目录



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

cp 是英文单词copy的简写

格式

cp [OPTION]... [-T] SOURCE DEST 把源拷到目标去
cp [OPTION]... SOURCE... DIRECTORY 把多个源拷贝到目标文件夹去
cp [OPTION]... -t DIRECTORY SOURCE... 把多个源拷贝到目标文件夹去 和上边的反过来写

单纯去cp源数据,数据的属性可能发生变化,比如时间戳,所有者

  • root命令用的cp命令是cp -i的别命,普通账户用的是原始的cp
[root@C8-1 ~]# type cp
cp is aliased to `cp -i'
  • cp命令默认原始命令是覆盖
  • cp命令默认只拷文件,只有添加-p才能保留属性
  • cp命令默认只能拷文件,要拷文件夹需要加-r递归
  • cp命令默认拷贝软链接文件拷贝的是指向的文件本身,-p保留不住链接属性,-d可以保留链接属性
  • cp命令-a属性是综合属性,即保留了全部属性,相当于备份作用

常用选项

  • -i 如果目标已存在,覆盖前提示
  • -n 不覆盖,注意两者顺序
  • -r, -R 递归复制目录及内部的所有内容
  • -a 归档,相当于-dR --preserv=all
  • -d --no-dereference --preserv=links 不复制原文件,只复制链接名
  • --preserv[=ATTR_LIST]
  • -p 等同--preserv=mode,ownership,timestamp #可以保留属性 权限,所有者,时间戳
  • -v --verbose
  • -f --force
  • -u --update 只复制源比目标更新文件或目标不存在的文件
  • -b 目标存在,覆盖前先备份,形式为 filename~ 只保留最近的一个备份,CentOS7
  • --backup=numbered 目标存在,覆盖前先备份加数字后缀 CentOS8默认值



    1.创建一个618目录,并在目录中创建一些文件

    2.拷贝618目录到618bak目录,因618bak不存在,故自动创建618bak目录

    3.再次拷贝618目录到618bak目录,因618bak目录存在,故拷贝之618bak目录下

    4.第三次拷贝618目录到618bak目录,因618bak目录存在且618bak目录下亦存在618bak目录,故提示是否覆盖。
[root@C8-1 ~]# mkdir 618
[root@C8-1 ~]# cd 618
[root@C8-1 618]# touch {a...d}{1..3}.test
[root@C8-1 618]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 17 10:17 {a...d}1.test
-rw-r--r--. 1 root root 0 Jun 17 10:17 {a...d}2.test
-rw-r--r--. 1 root root 0 Jun 17 10:17 {a...d}3.test
[root@C8-1 618]# cd ~
[root@C8-1 ~]# pwd
/root
[root@C8-1 ~]# cp -a 618 ./618bak
[root@C8-1 ~]# ll
total 12
-rw-r--r--. 1 root root 0 Jun 17 09:36 2020-06-16_09:36:55.log
-rw-r--r--. 1 root root 0 Jun 17 09:37 2021-06-17_09:37:53.log
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak
-rw-------. 1 root root 1184 Mar 16 01:56 anaconda-ks.cfg
-rw-r--r--. 1 root root 6 Jun 17 06:22 linux.txt
-rw-r--r--. 1 root root 7 Jun 17 06:21 win.txt
[root@C8-1 ~]# cp -a 618 ./618bak
[root@C8-1 ~]# ls
2020-06-16_09:36:55.log 2021-06-17_09:37:53.log 618 618bak anaconda-ks.cfg linux.txt win.txt
[root@C8-1 ~]# ls 618bak/
618 {a...d}1.test {a...d}2.test {a...d}3.test
[root@C8-1 ~]# cp -a 618 ./618bak
cp: overwrite './618bak/618/{a...d}1.test'? y
cp: overwrite './618bak/618/{a...d}2.test'? y
cp: overwrite './618bak/618/{a...d}3.test'? y
[root@C8-1 ~]# ls 618bak/
618 {a...d}1.test {a...d}2.test {a...d}3.test

常用备份命令

在备份文件后自动添加时间戳后缀 __date +%F_%T

[root@C8-1 ~]# cp -a 618 ./618bak/618bak_`date +%F_%T`
[root@C8-1 ~]# cp -a 618 ./618bak/618bak_`date +%F_%T`
[root@C8-1 ~]# cp -a 618 ./618bak/618bak_`date +%F_%T`
[root@C8-1 ~]# cp -a 618 ./618bak/618bak_`date +%F_%T`
[root@C8-1 ~]# ll 618bak/
total 0
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak_
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak_2020-06-17_10:46:14
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak_2020-06-17_10:46:17
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak_2020-06-17_10:46:19
drwxr-xr-x. 2 root root 69 Jun 17 10:17 618bak_2020-06-17_10:46:20

Linux文件系统和管理-2文件操作命令(中)的更多相关文章

  1. Linux文件系统和管理-2文件操作命令(上)

    文件操作命令 文件 文件也包括目录 目录是一种特殊的文件 目录 一个目录名分成两部分 所在目录 dirname 父目录的路径 文件名 basename 本身就是两个命令 [root@C8-1 misc ...

  2. Linux文件系统和管理-2文件操作命令(下)

    移动和重命名文件 mv 命令可以实现文件或目录的移动和改名 剪切的效果 同一分区移动数据,速度很快:数据位置没有变化 不同分区移动数据,速度相对慢:数据位置发生了变化 格式 和cp基本一样 mv [O ...

  3. Linux文件系统和管理-1文件系统目录

    文件系统目录结构 Linux常见目录及用途 bin binary 放的是二进制程序 /usr/bin 和这是同一回事 bin -> usr/bin /bin是 /usr/bin的快捷方式 boo ...

  4. Linux文件系统及管理

    Linux文件系统及管理 一.Linux系统的文件系统与目录结构   Linux系统的文件目录结构为一个单根倒置的树结构,具体表现如下图: 从CentOS7开始,以下目录与之前的版本发生变化 ◆/bi ...

  5. linux查看目录下所有文件内容中是否包含某个字符串

    转发自:http://blog.csdn.net/yimingsilence/article/details/76071949 查找目录下的所有文件中是否含有某个字符串 find .|xargs gr ...

  6. Linux学习笔记之Linux用户与用户组、文件操作命令、文件权限剖析

    1.用户与用户组 Linux是一个多用户操作系统,通过用户与用户组的概念,可以实现保证安全性和隐私性.任何一个文件都具有User.Group.Others三个权限. 文件拥有者(Linux下所有的东西 ...

  7. Linux磁盘、目录、文件操作命令

    0x01. Linux磁盘分区与目录结构 ① 主分区.拓展分区.逻辑分区:早期主引导扇区MBR用64B存放主分区信息,每个分区用16B,因而上限为4个主分区,后来,因分区需求,引入拓展分区(类主分区) ...

  8. linux 文件系统的管理 (硬盘) 工作原理

    一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16 ...

  9. Linux入门基础 #5:Linux文件系统挂载管理

    本文出自   http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...

随机推荐

  1. [Java核心技术]第九章-集合(Java集合框架、具体的集合、映射)

    9.1Java集合框架 一些有的没的 可以使用接口类型存放集合的引用.一旦改变了想法,只需要在调用构造函数的地方做一处修改. add方法用于向集合添加元素,如果添加元素确实改变了集合就返回true. ...

  2. 使用Java Stream,提取集合中的某一列/按条件过滤集合/求和/最大值/最小值/平均值

    不得不说,使用Java Stream操作集合实在是太好用了,不过最近在观察生产环境错误日志时,发现偶尔会出现以下2个异常: java.lang.NullPointerException java.ut ...

  3. golang 协程学习

    协程数据传递问题 func TestGoroutineData(t *testing.T) { var wg sync.WaitGroup wg.Add(1) i := 0 go func(j int ...

  4. 查看 JVM 参数的默认值

    查看初始默认值:-XX:+PrintFlagsInitial HuandeMacBook-Air:~ huanliu$ java -XX:+PrintFlagsInitial [Global flag ...

  5. Java基础一篇过(七)Java8--stream流

    一.简介 流(stream)也是Java8的一个重要的新特性,主要是对集合(Collector)功能的增强:在上一篇文章我们简单的了解了lambda表达式,现在我们学习下流的概念:使用流可以帮助我们做 ...

  6. vulnhub-Os-hackNos-2

    vulnhub-Os-hackNos-2 开局扫主机,发现141是存活的,进行nmap扫描,获取端口信息. 发现22,80端口开放,进行目录爆破. 发现tsweb,浏览器访问,推测是wordpress ...

  7. awk的一些认识

    awk awk '{pattern + action}' {filenames} 当我们所指定的规则脚本过长的时候,我们可以使用-f的选项加上我们的脚本文件.再复杂点我们可以直接调用shell脚本,就 ...

  8. java进阶(19)--异常处理机制

    一.基本概念 1.异常的作用: java将异常信息打印至控制台,供程序修改,增加其健壮性. int c=1/0;    //将抛出 java.lang.ArithmeticException 2.异常 ...

  9. python 系统设置

    1. 设置python运行环境为utf-8 import sys #引用sys模块 reload(sys) #重新加载sys sys.setdefaultencoding("utf-8&qu ...

  10. Arduino 语法与函数

    Arduino programs can be divided in three main parts: structure, values (variables and constants), an ...