假设我有一个 PDF 并且我想获取该 PDF 可用的任何元数据。我应该使用什么实用程序?
我发现我通常最想知道的信息是纸张大小,这是 PDF 查看者通常不会报告的内容。例如,PDF 大小是 letter、legal、A4 还是其他尺寸?但其他可用信息也可能令人感兴趣。
上传到 ftp 站点时,原始文件创建日期似乎丢失了,而我得到了上传日期。但是,文件中的 Exif 数据是正确的。是否有工具可以从 Exif 日期批量更改创建日期?
众所周知,空文本文件的字节数为零:
但是,它们中的每一个都包含metadata,根据我的研究,它存储在inodes 中,并且确实使用 space。
鉴于此,我认为可以通过纯粹创建空文本文件来填充磁盘。这样对吗?如果是这样,我需要在 1GB 的磁盘中填充多少个空文本文件?
为了做一些检查,我运行了,df -i但这显然显示了正在使用的 inode 的百分比(?),而不是它们的重量。
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 947470 556 946914 1% /dev
tmpfs 952593 805 951788 1% /run
/dev/sda2 28786688 667980 28118708 3% /
tmpfs 952593 25 952568 1% /dev/shm
tmpfs 952593 5 952588 1% /run/lock
tmpfs 952593 16 952577 1% /sys/fs/cgroup
/dev/sda1 0 0 0 - /boot/efi
tmpfs 952593 25 952568 1% /run/user/1000
/home/lucho/.Private 28786688 667980 28118708 3% /home/lucho
Run Code Online (Sandbox Code Playgroud) 我正在编写一个 bash 脚本,我想将一组视频 (mp4) 的元数据(长度、分辨率等)回显到一个文件中。
有没有一种简单的方法可以从 MP4 文件中获取这些信息?
[ OP 编辑 #1:事实证明,exiftool 创建者/维护者 Phil Harvey 在ExifTool 论坛上的一个重复线程中很好地回答了这个问题]
[ OP 编辑 #2:来自ExifTool 常见问题解答:ExifTool在尝试删除所有元数据时不能保证从文件中完全删除元数据。请参阅“作家限制”。]
我想在旧硬盘上搜索当前备份驱动器上没有的照片。格式包括 jpg、png、tif 等...,以及各种原始格式(不同的相机型号和制造商)。
我只对图像本身的唯一性感兴趣,而不是由于 exif 标签的值、给定 exif 标签本身的存在/不存在、嵌入的缩略图等的差异而引起的唯一性......
尽管我不希望在其他相同图像的不同副本之间发现任何损坏/数据腐烂,但我想检测到这一点,以及由于调整大小和颜色变化而导致的差异。
[编辑 #3 由 OP:澄清:一小部分误报是可以容忍的(如果文件不是唯一的,则认为它是唯一的),而漏报是非常不可取的(文件被错误地推断为重复)。 ]
我的计划是在剥离任何和所有元数据后根据 md5sums 确定唯一性。
如何剥离元数据?
将exiftool -all= <filename>足够?
如果我出口的图像与可以说300 DPI,我读出的任何应用程序,可以做到这一点(就像它的元信息file,exiftool,identify,mediainfo等),我总是得到显示图像宽度和图像高度的值。
在这种情况下: 2254 x 288
如何从任何其他图像文件中获取 300 DPI 值或相应值?
由于在我的情况下 Image-Width 和 Image-Height 的比例值无关紧要,我希望能够检查任何图像的分辨率,以便能够编译具有相同质量的新图像,而与它们的比例无关,因为这会有所不同每个文件。
对于我的工作流程,我对任何命令行解决方案都特别感兴趣,尽管其他任何解决方案当然也受到高度赞赏。
我必须发出哪些不可逆命令才能从中删除所有元数据foo.pdf?假设嵌入的图像已经干净。
我的印象来自
https://gist.github.com/hubgit/6078384
那
exiftool -all:all= foo.pdf
qpdf --linearize foo.pdf bar.pdf
Run Code Online (Sandbox Code Playgroud)
可能就足够了,但我不清楚这是否是一个完全完整的方法。有一些谈论pdftk和我不明白的“信息词典”。
我有一个在 Linux 上运行的 Asustor NAS;我不知道他们使用什么发行版。
我可以使用 SSH 登录它并使用所有 Shell 命令。内部卷使用 ext2,外部 USB 硬盘使用 NTFS。
当我尝试使用cp命令来复制任何文件时,该文件的日期元数据将更改为当前日期时间。
例如,如果我使用 Windows 从 SMB 复制文件并且该文件在 2007 年被修改,则新文件被标记为现在在 2017 年创建但在 2007 年修改。但使用 Linuxcp命令其修改日期也更改为 2017 年。
这个修改日期与我非常相关,因为它允许我按修改日期对 Windows 资源管理器上的文件进行排序。如果它被覆盖,我将无法排序,而且它们现在似乎都已创建。我还使用修改日期来了解我何时获得了一些罕见的旧文件。
我可以在cp命令中使用任何参数来保留原始文件元数据吗?
更新:我试过了,cp --preserve=timestamps但没有用,它打印了:
cp: unrecognized option '--preserve=timestamps'
BusyBox v1.19.3 (2017-03-22 17:23:49 CST) multi-call binary.
Usage: cp [OPTIONS] SOURCE DEST
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY
-a Same as -dpR
-R,-r Recurse
-d,-P Preserve symlinks (default if -R) …Run Code Online (Sandbox Code Playgroud) 我有一个用智能手机拍摄的视频文件。我想删除写入其中的 GPS 位置数据,保留所有其他信息。我尝试了一些 sed 命令,但似乎没有任何效果。
在 shell 中,如何使用单个命令(或单个命令行)根据文件中的元数据自动设置 Quicktime 视频文件的修改(或创建)日期和时间?对于 JPG 文件,我们有exiv2 -T,但是对于 .mov 文件有类似的命令吗?
举个例子,让我们从包含以下元数据的文件 video.mov 开始:
\n$ exiftool video.mov\nExifTool Version Number : 12.57\nFile Name : video.mov\nDirectory : .\nFile Size : 64 MB\nFile Modification Date/Time : 2023:07:04 02:53:05+02:00\nFile Access Date/Time : 2023:07:01 11:42:46+02:00\nFile Inode Change Date/Time : 2023:07:04 02:53:05+02:00\nFile Permissions : -rw-r--r--\nFile Type : MOV\nFile Type Extension : mov\nMIME Type : video/quicktime\nMajor Brand : Apple QuickTime (.MOV/QT)\nMinor Version : 0.0.0\nCompatible Brands : qt\nMedia Data Size : 64215615\nMedia Data Offset : …Run Code Online (Sandbox Code Playgroud)