linux命令按时间命名

fiy 其他 69

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,可以使用`date`命令来按照时间来命名文件或目录。`date`命令可以显示当前的日期和时间,并且可以自定义日期格式。

    下面是一些常用的示例:

    1. 按照日期命名文件:可以使用`date`命令的`+%Y%m%d`选项来获取当前日期,并将其作为文件名的一部分。例如,要创建以当前日期命名的文件,可以使用以下命令:

    “`shell
    touch $(date +%Y%m%d).txt
    “`

    这将创建一个类似于`20211225.txt`的文件。

    2. 按照时间命名文件:可以使用`date`命令的`+%H%M%S`选项来获取当前时间,并将其作为文件名的一部分。例如,要创建以当前时间命名的文件,可以使用以下命令:

    “`shell
    touch $(date +%H%M%S).txt
    “`

    这将创建一个类似于`235946.txt`的文件。

    3. 按照日期和时间命名文件:可以将日期和时间组合起来,来命名文件。例如,要创建以日期和时间命名的文件,可以使用以下命令:

    “`shell
    touch $(date +%Y%m%d%H%M%S).txt
    “`

    这将创建一个类似于`20211225235946.txt`的文件。

    以上是一些常见的按照时间命名文件的方法,你可以根据自己的需求来选择合适的命名方式。同时,还可以结合其他命令和操作,实现更加复杂的文件命名方式。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,可以使用一些命令按时间命名文件或目录。下面是五种常用的方法:

    1. 使用date命令:使用date命令可以获取当前的日期和时间,并将其用作文件或目录的名称。可以使用date命令的各种选项来自定义所需的日期和时间格式。例如,使用以下命令创建一个以当前日期和时间命名的目录:
    “`
    mkdir $(date +%Y-%m-%d_%H-%M-%S)
    “`
    这将创建一个目录,名称类似于”2022-01-01_12-30-45″,其中包含了当前的年份、月份、日期、小时、分钟和秒。

    2. 使用touch命令:touch命令通常用于创建空文件,但也可以用于更改文件或目录的时间戳。通过使用touch命令,可以创建一个以特定时间命名的文件或目录。例如,使用以下命令创建一个以特定时间命名的文件:
    “`
    touch -t 202201011230.45 file.txt
    “`
    这将创建一个名为file.txt的文件,并将其修改时间设置为2022年1月1日12时30分45秒。

    3. 使用cp命令:cp命令用于复制文件或目录,可以使用该命令按照原始文件或目录的时间戳创建一个副本。通过使用cp命令,可以复制文件或目录,并按原始时间命名副本。例如,使用以下命令将文件复制到一个以原始修改时间命名的副本:
    “`
    cp –preserve=timestamps original.txt $(stat -c %y original.txt | cut -d’ ‘ -f1)_copy.txt
    “`
    这将创建一个名为”2022-01-01_copy.txt”的副本,其中时间戳与原始文件相同。

    4. 使用rsync命令:rsync命令用于远程或本地文件同步,也可以用来按时间命名文件或目录。通过使用rsync命令,可以复制文件或目录,并将文件名或目录名设置为旧文件名加上特定时间。例如,使用以下命令将文件复制到一个以特定时间命名的副本:
    “`
    rsync -a original.txt “$(date +%Y-%m-%d_%H-%M-%S)_copy.txt”
    “`
    这将创建一个名为”2022-01-01_12-30-45_copy.txt”的副本,其中包含了当前的年份、月份、日期、小时、分钟和秒。

    5. 使用shell脚本:可以编写一个shell脚本,利用Linux的shell编程能力来根据需要的格式生成文件或目录的名称。通过在脚本中使用date命令,可以获取当前的日期和时间,并将其用作文件或目录的名称。然后,可以将脚本设置为可执行,并执行以创建具有时间戳名称的文件或目录。例如,编写以下脚本并执行它:
    “`
    #!/bin/bash

    timestamp=$(date +%Y-%m-%d_%H-%M-%S)

    mkdir $timestamp
    “`
    这将创建一个以当前日期和时间命名的目录,名称类似于”2022-01-01_12-30-45″。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux系统中,我们可以使用一些命令来按时间进行命名。下面是几种常见的方法和操作流程:

    一、使用date命令

    1、使用date命令获得当前的日期和时间。
    $ date
    输出结果示例:Mon 26 Aug 2019 10:20:30 AM CST

    2、将date命令的输出作为文件名。
    $ mv filename.txt $(date +”%Y%m%d%H%M%S”).txt
    上述命令将文件filename.txt重命名为当前日期和时间的形式(例如:20190826102030.txt)。

    二、使用touch命令

    1、使用touch命令创建一个空文件。
    $ touch filename.txt

    2、使用touch命令设置文件的最后修改时间。
    $ touch -t YYMMDDHHMM.SS filename.txt
    例如,执行以下命令将文件filename.txt的最后修改时间设置为201908261020.30。
    $ touch -t 201908261020.30 filename.txt

    三、使用cp命令

    1、使用cp命令复制文件。
    $ cp filename.txt $(date +”%Y%m%d%H%M%S”).txt
    将文件filename.txt复制为当前日期和时间的形式(例如:20190826102030.txt)。

    四、使用find命令

    1、使用find命令找到符合特定条件的文件。
    例如,找到文件名以txt结尾,并且最后修改时间在一天之内的文件:
    $ find /path/to/directory -name “*.txt” -mtime 0

    2、将find命令的结果重命名。
    $ find /path/to/directory -name “*.txt” -mtime 0 -exec mv {} $(date +”%Y%m%d%H%M%S”).txt \;
    上述命令将找到的文件重命名为当前日期和时间的形式。

    五、使用rename命令

    1、安装rename命令。
    $ sudo apt-get install rename
    注:不同的发行版可能使用不同的命令安装。

    2、使用rename命令按照指定格式重命名文件。
    $ rename ‘s/(.*)/sprintf(“%s_%02d”, $1, ++$i)/e’ *.txt
    上述命令将所有的txt文件重命名为以序号结尾的形式(例如:filename_01.txt,filename_02.txt)。

    以上是几种常见的在Linux系统中按时间命名的操作方法,您可以根据自己的需求选择其中一种方法。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部