AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[timestamps](unix)

Martin Hope
user1583209
Asked: 2024-10-20 06:41:54 +0800 CST

将时间戳和元数据从一个文件复制到另一个文件

  • 6

我旋转了 MP4 视频,在此过程中丢失了文件的正确元数据和时间戳。

有没有办法将元数据和时间戳从原始(未旋转)文件复制到新文件。(请注意,我不是问如何复制保留时间戳的文件,而是如何将此信息传输到另一个文件。)

timestamps
  • 2 个回答
  • 47 Views
Martin Hope
newview
Asked: 2022-11-02 03:02:51 +0800 CST

如何获取时间变量的时间戳?

  • 5

在我的操作系统中

date
Tue 01 Nov 2022 06:58:10 PM HKT

获取unix时间戳

date +%s
1667300297

获取UTC时间。

date -u
Tue 01 Nov 2022 10:58:08 AM UTC

如果我将变量分配为 UTC 时间

x=$(date -u)

那么如何获取变量的时间戳呢?

$x  +%s
bash: Tue: command not found
timestamps
  • 1 个回答
  • 16 Views
Martin Hope
FarO
Asked: 2022-04-27 06:04:48 +0800 CST

如何根据其他文件的创建日期删除文件?

  • 1

我有一个运行 Linux(busybox 1.32.0)的安全摄像头,我可以将其设置为在文件夹结构中以(可配置的)30 秒块连续录制视频:

recording/2022/04/26/15/2022-04-26-15-30-00.mp4

在另一个文件夹中,仅在检测到运动时才会记录静态图像:

stills/2022/04/26/15/2022-04-26-15-30-05.jpg

这是我为在检测到运动之前获取视频而设计的一种解决方法。

由于可用空间有限,我想删除任何在运动前 60 秒和运动后 120 秒以上开始的视频,以便为每个静止图像保留一些​​前后视频。

静止图像可能每 5 秒出现一次,因为它们基于运动触发而不是预定义的间隔。

当然,对于一个单一的图像,运行“查找”和适当的选项是一个问题,但是我更复杂的用例呢?

我想了一些可能的方法,但我不确定如何进行。

我考虑过每天运行一个脚本,列出前一天的元素(录音和静止图像),将文件名转换为每个元素的时间戳,然后迭代地将时间戳与静止图像的时间戳进行比较。

这将涉及 4 个列表(文件名、时间戳、录音和剧照),并且在我看来非常参与(可能是因为我不熟悉 shell 脚本),那么有没有更简单的方法呢?

涉及 python 或 perl 的解决方案需要为平台编译它,并且可能会给 CPU 带来过高的负载,更不用说设备上的可用空间已经有限,并且 samba 4.x 可执行文件已经无法适应。

可用的工具是busybox 的一部分以及项目网站中列出的二进制文件。

shell-script timestamps
  • 2 个回答
  • 571 Views
Martin Hope
Greg Plamondon
Asked: 2022-01-21 09:01:41 +0800 CST

根据文件名更改文件创建日期和时间

  • 3

我正在将 Asterisk 通话录音从我们的主服务器复制到 samba 共享,并且创建日期和时间已更改为当前日期和时间。

文件格式为:in-xxxxxxxxxx-xxxxxxxxxx-20211020-162749-1634761669.7921917.wav

粗体部分在 EPOCH 时间。我有数百个这样的文件,我需要根据文件名中的 EPOCH 时间戳更改文件的创建日期。谁能帮我?

files timestamps
  • 2 个回答
  • 1294 Views
Martin Hope
Florian Brucker
Asked: 2021-11-16 01:20:40 +0800 CST

SFTP“ls -l”与“ls -lh”中的不同时间戳

  • 6

我有一个第 3 方 SFTP 服务器,我想在其上检查一些文件时间戳。

但是,如果我使用ls -lvs. ,我确实会为同一个文件得到不同的结果ls -lh:

sftp> ls -l
[...]
-rwxrwxrwx 1 0        0               1963 Nov 15 08:49 foo.txt
[...]

sftp> ls -lh
[...]
-rwxrwxrwx    0 0        0            1.9K Nov 15 07:49 foo.txt
[...]

sftp> ls -l foo.txt
-rwxrwxrwx    0 0        0            1963 Nov 15 07:49 foo.txt

sftp> ls -lh foo.txt
-rwxrwxrwx    0 0        0            1.9K Nov 15 07:49 foo.txt

如您所见,时间戳 inls -l是08:49而其他命令具有07:49. 服务器在德国,目前比 UTC 晚 1 小时,所以我的猜测是07:49UTC 而08:49柏林时间。

但是,我的机器是 UTC:

$ cat /etc/timezone 
Etc/UTC

我的理解是,根据 SFTP 标准,所有时间戳都应该是 UTC。但是我不确定这种理解是否正确(鉴于标准有很多不同的版本)。我也不知道该sftp工具是否以某种方式对时间戳进行了后处理(man sftp根本没有提到时区或时间戳)。

造成这种差异的原因可能是什么?

timestamps sftp
  • 1 个回答
  • 860 Views
Martin Hope
dungarian
Asked: 2021-10-23 18:55:39 +0800 CST

为什么选择 tldr | xclip 输出看起来像时间戳的转义码,以及如何删除它?

  • 0

问题

我想将 tldr 的输出复制到剪贴板,然后将其粘贴到文本编辑器。

我执行:tldr pwd | xclip -sel clip

当我从剪贴板粘贴时,我得到:

pwd
[0mPrint name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd.

 - [23;22;24;25;32mPrint the current directory:
[23;22;24;25;33m   pwd
[0m
 - [23;22;24;25;32mPrint the current directory, and resolve all symlinks (i.e. show the "physical" path):
[23;22;24;25;33m   pwd -P
[0m[0m

我想摆脱时间戳,也想知道为什么会这样。

观察

  • tldr pwd(不传递到 xclip)不显示时间戳
  • man pwd | xclip -sel clip粘贴时不包括时间戳
  • 所以,只有在将 tldr 传递给 xclip 时,我才会发现这种情况
  • 时间戳看起来像转义码

环境

  • 静态主机名:debian
  • 图标名称:电脑-桌面
  • 机箱:台式
  • 操作系统:Debian GNU/Linux 10 (buster)
  • 内核:Linux 4.19.0-17-amd64
  • 架构:x86-64
gui timestamps
  • 2 个回答
  • 353 Views
Martin Hope
student
Asked: 2021-09-05 02:46:07 +0800 CST

如何使链接具有与目标文件相同的时间戳

  • 0

假设你有file一个给定的文件mtime。如果我创建一个通过符号链接sym指向的符号链接,它本身会得到一个与创建时间相对应的-stamp,这与of 不同。fileln -smtimesymlinkmtimefile

那么有没有办法创建一个符号链接,使其与mtime它指向的文件相同?

这个问题的背景是这个脚本,其中创建了一个指向云镜像的n个最新文件的链接目录。现在,例如,如果我ls -lt在此current目录中执行此操作,它不会显示创建实际文件的日期,而是显示创建符号链接的日期。但我想查看文件创建日期。

编辑 在我原来的帖子中,我错误地要求 ctime(我在上面更改了它),但是问题应该是关于 mtime。感谢@ilkkachu 指出这一点。

symlink timestamps
  • 3 个回答
  • 349 Views
Martin Hope
brijazz
Asked: 2020-01-24 04:27:12 +0800 CST

将 mm-dd-YY 转换为午夜 UTC 的时间戳

  • 0

我需要将mm-dd-YY字符串转换为 UNIX 时间戳以用于 HubSpot 的 API。所述 API 要求将日期设置为 UTC 午夜。

我可以使用以下方法转换日期:date -j -f "%m-%d-%Y" "01-20-2013" "+%s"但是如何将“午夜 UTC”组件附加到输出中?

date timestamps
  • 2 个回答
  • 988 Views
Martin Hope
knot22
Asked: 2019-12-04 13:54:05 +0800 CST

使用一个日期变量,但格式不同

  • 0

在 shell 脚本中,有以下变量:
datestamp=$(date '+%Y-%m-%d_T%H-%M-%S')
datestamp_pretty=$(date '+%m/%d/%Y at %I:%M:%S %p')

第一个用作输出文件名的一部分,而第二个用于在文件内容中显示可读性好的日期和时间。由于这些是单独创建的,因此秒数可能会略有下降。有没有办法创建一个日期变量,然后以两种不同的方式对其进行格式化?如果是这样,这是如何完成的?

timestamps
  • 2 个回答
  • 60 Views
Martin Hope
Jander
Asked: 2019-08-06 10:40:29 +0800 CST

如何检查符号链接的时间戳?

  • 2

当符号链接比原始文件旧时,有没有办法使用传统命令更新符号链接?

我使用 Seafile 服务器(类似于 Dropbox)将某些文件提供给我的学生。所以我共享了一个目录并创建了指向这些文件的链接。Seafile 和 Dropbox 都不关心链接并将实际文件复制到服务器。

问题是如果我更新实际文件,链接时间戳不会改变,新版本的文件也不会上传到服务器。

我尝试了简单的测试:

[ ./shared/the-symlink -ot ./actualfiles/pontedfile ] && touch -h ./shared/the-symlink

不幸的是,test取消引用链接并将文件的时间戳与自身进行比较,结果当然是错误的。

另请注意,符号链接必须比链接文件更新。我不需要将其设置为相同的时间戳。

有没有办法test检查链接的时间戳而不是指向的文件?

我试图避免的其他解决方案:

  • 复制文件而不是链接会起作用,但是我不得不消耗太多的磁盘空间,因为文件通常很大;
  • touch使用所有符号链接也可以,但是所有文件都会一次又一次地复制到服务器;(不是问题:见下面的编辑)

我愿意一个比将时间戳转换为字符串并自己比较它们更优雅的解决方案......

这对我来说不是解决方案。

编辑:

这不是问题的答案,但它是我的问题的解决方案:touch -h *更新所有符号链接时间戳。Seafile 识别出这种变化并采取行动。幸运的是,它现在使用实际的文件时间戳重新检查并仅上传更改的文件。

编辑2:

使用stat工作的解决方案:stat -c "%Y". 感谢史蒂夫。

symlink timestamps
  • 1 个回答
  • 1219 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve