linux执行命令加上时间戳

不及物动词 其他 131

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,可以通过使用date命令来生成时间戳,并与其他命令结合使用,实现在执行命令时自动添加时间戳的功能。

    一种常见的方法是使用管道符号(|)将date命令和要执行的命令连接起来,将date命令的输出作为要执行的命令的输入。

    例如,要在执行ls命令时添加时间戳,可以使用以下命令:

    “`shell
    ls | xargs -I {} sh -c ‘echo “$(date) {}”‘
    “`

    解释一下这个命令:
    – ls:要执行的命令,这里是列出当前目录下的文件和文件夹。
    – xargs -I {}:将ls的输出作为参数传递给后面的命令,并将每行作为一个参数。
    – sh -c ‘echo “$(date) {}”‘:这里的{}表示ls的输出,通过echo命令将时间戳和ls的输出进行拼接,并输出到终端。

    运行这个命令,你将会看到如下输出格式:

    “`
    Thu Sep 23 15:49:27 CST 2021 文件1.txt
    Thu Sep 23 15:49:27 CST 2021 文件2.txt
    Thu Sep 23 15:49:27 CST 2021 文件夹1
    “`

    其中,Thu Sep 23 15:49:27 CST 2021 表示时间戳,文件1.txt、文件2.txt和文件夹1是ls的输出。

    如果你想将时间戳添加到其他命令中,只需要将ls命令替换为你想要执行的命令即可。比如,如果你想在执行grep命令时添加时间戳,可以使用以下命令:

    “`shell
    grep ‘关键词’ 文件名 | xargs -I {} sh -c ‘echo “$(date) {}”‘
    “`

    当然,这只是其中一种方法,你还可以使用其他的方法实现在执行命令时添加时间戳的功能。但无论你选择哪种方法,都需要注意命令的执行效率和性能问题,避免对系统造成不必要的负担。

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

    在Linux中,我们可以使用不同的方法来为执行的命令添加时间戳。以下是几种常见的方法:

    1. 使用date命令:在执行命令时,可以使用反引号(‘‘)或者$()来嵌套date命令来获取当前时间,并将其作为命令的一部分。例如,我们可以使用以下命令来在执行ls命令时添加时间戳:

    “`
    $ echo “Current time is: $(date)” && ls
    “`

    这将显示当前时间,然后执行ls命令。时间戳将显示在命令的输出之前。

    2. 编写一个脚本:我们可以编写一个简单的脚本来添加时间戳并执行命令。创建一个文本文件,例如“timestamp.sh”,并添加以下内容:

    “`bash
    #!/bin/bash
    echo “Current time is: $(date)”
    $@
    “`

    保存并退出文件后,赋予该文件执行权限:

    “`
    $ chmod +x timestamp.sh
    “`

    现在,您可以在执行命令时使用该脚本来添加时间戳。例如:

    “`
    $ ./timestamp.sh ls
    “`

    该命令将显示当前时间,并执行ls命令。

    3. 使用alias命令:通过设置别名,我们可以将一个长命令映射为一个短命令,同时添加时间戳。在终端中使用以下命令将命令与时间戳组合起来:

    “`
    $ alias timestamp=’echo “Current time is: $(date)” &&’
    “`

    现在,您可以在执行命令时使用“timestamp”别名来添加时间戳。例如:

    “`
    $ timestamp ls
    “`

    这将显示当前时间,并执行ls命令。

    4. 使用history命令:使用history命令,我们可以打印出最近执行的命令并包含时间戳。在终端中使用以下命令打印出带有时间戳的命令历史记录:

    “`
    $ HISTTIMEFORMAT=”%Y-%m-%d %T ” history
    “`

    这将输出以时间戳为前缀的命令历史记录。

    5. 使用脚本记录命令执行日志:我们可以编写一个脚本来记录执行的命令和时间戳,并将其输出到一个日志文件中。创建一个名为“timestamp_log.sh”的文件,并添加以下内容:

    “`bash
    #!/bin/bash
    echo “$(date) $@” >> command_log.txt
    $@
    “`

    保存并退出文件后,赋予该文件执行权限:

    “`
    $ chmod +x timestamp_log.sh
    “`

    现在,在执行命令时,使用该脚本来添加时间戳并记录到日志文件中。例如:

    “`
    $ ./timestamp_log.sh ls
    “`

    这将在“command_log.txt”文件中记录执行的命令和时间戳。

    通过这几种方法,您可以根据具体需求,在Linux中为执行的命令添加时间戳,方便地追踪和记录操作历史。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,可以通过在执行命令时添加时间戳来记录命令的执行时间。下面是一种实现方式:

    1. 使用脚本执行命令

    首先创建一个脚本文件,例如`timestamp.sh`,并使用文本编辑器打开该文件。

    “`
    vi timestamp.sh
    “`

    在脚本文件中添加以下内容:

    “`bash
    #!/bin/bash

    # 获取当前时间戳
    timestamp=$(date +%Y-%m-%d_%H:%M:%S)

    # 执行命令并输出结果
    echo “[$timestamp] $@” >> command_timestamp.log
    eval “$@”
    “`

    保存并退出文本编辑器。

    2. 赋予脚本执行权限

    为了能够在终端中直接执行该脚本文件,需要给该文件赋予执行权限。

    “`
    chmod +x timestamp.sh
    “`

    3. 使用脚本执行命令

    接下来,你可以在终端中使用以下形式来执行命令:

    “`
    ./timestamp.sh
    “`

    例如,要执行`ls`命令,你可以这样写:

    “`
    ./timestamp.sh ls
    “`

    执行结果将会输出到`command_timestamp.log`文件中,并且在每一行的开头添加了时间戳。

    4. 查看命令执行日志

    你可以使用`cat`命令来查看命令执行日志。

    “`
    cat command_timestamp.log
    “`

    通过以上步骤,你就可以在Linux系统中执行命令并记录执行时间了。

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

400-800-1024

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

分享本页
返回顶部