Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 嵌入参数替换_Linux_Variable Substitution - Fatal编程技术网

Linux 嵌入参数替换

Linux 嵌入参数替换,linux,variable-substitution,Linux,Variable Substitution,这是一个接一个的参数替换(将图片文件名转换为日期): 我想一次完成这项工作,类似这样exiftool就可以完成: dt=“${var:0:11} ${${var:11:8}//-/:}” 你不能像那样嵌套扩展操作符。但是您可以使用较小的子字符串来获得所需的结果 dt="${var:0:11} ${var:11:2}:${var:14:2}:${17:2}" 谢谢你的回答 最后,我只想澄清一下,因为我需要ExifTool使用的日期时间,所以我不需要做任何之前的Linux变量

这是一个接一个的参数替换(将图片文件名转换为日期):

我想一次完成这项工作,类似这样exiftool就可以完成:

dt=“${var:0:11} ${${var:11:8}//-/:}”

你不能像那样嵌套扩展操作符。但是您可以使用较小的子字符串来获得所需的结果

dt="${var:0:11} ${var:11:2}:${var:14:2}:${17:2}"

谢谢你的回答

最后,我只想澄清一下,因为我需要ExifTool使用的日期时间,所以我不需要做任何之前的Linux变量替换,因为ExifTool可以通过使用-d选项指定文件名中使用的日期时间格式来提取它。这就是我最后做的。请注意,我甚至不必删除ExifTool的结尾CX.mov字符即可获得正确的日期时间:

exiftool -d '%Y-%m-%d $H-%M-%S' \
    '-DateTimeOriginal<${FileName}' \
    '-CreateDate<${FileName}' \
    '-MediaCreateDate<${FileName}' "${file}"
exiftool-d'%Y-%m-%d$H-%m-%S'\
'-DateTimeOriginald在编写代码时不要使用“智能引号”。
exiftool -d '%Y-%m-%d $H-%M-%S' \
    '-DateTimeOriginal<${FileName}' \
    '-CreateDate<${FileName}' \
    '-MediaCreateDate<${FileName}' "${file}"