使用"触摸-r"对于具有automator

时间:2015-07-14 10:56:47

标签: shell terminal osx-yosemite automator

我使用" MacOS X Yosemite(10.10.4)"

我已使用QuickTime将视频mts文件转换为mov文件,但创建的新文件并未保留原始创建日期。

  

fileA.mts - >创作日期:07/02/2010 10:51

     

fileA_converted.mov - >创作日期:今天8:35

我想使用原始文件的日期更改多个文件的“创建日期”属性。我知道我可以使用Terminal" Touch"命令为此:

touch -r fileA.mts fileA_converted.mov

touch -r fileB.mts fileB_converted.mov

由于我有200多个文件要更改创建日期,是否可以使用automator Script Shell操作或任何其他方式自动执行此操作?

2 个答案:

答案 0 :(得分:0)

当我们将所有原始文件和转换后的文件放在同一文件夹中时执行以下命令

ls | grep ".mts" | awk -F. '{print $0" "$1"_converted.mov"}' |  xargs touch -r

当我们在存在.mts文件的路径上有不同的文件夹运行命令时,在$ 1之前添加绝对路径,就像我添加了/ home / convertedfiles /

ls | grep ".mts" | awk -F. '{print $0" /home/convertedfiles/"$1"_converted.mov"}' |  xargs touch -r

答案 1 :(得分:0)

bash shell中就像这样 - 这是Terminal(未经测试)中的内容:

#!/bin/bash
for orig in *.mts; do 
   # Generate new name from old one
   new="${orig/.mts/_converted.mov}"
   echo touch -r "$orig" "$new"
done

将上述内容保存在名为doDates的文件中,然后在终端

中输入
chmod +x doDates          # make the script executable
./doDates                 # run the script

示例输出

touch -r Freddy Frog.mts Freddy Frog_converted.mov
touch -r fileA.mts fileA_converted.mov

此刻它什么都不做,但是运行它,看看你是否喜欢它所说的内容,然后删除单词echo并再次运行它,如果一切正常。