微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将文件名保存为递增的数字

我正在尝试编写一个bash脚本,以保存特定格式的文件的屏幕截图。 我想把它保存为一个数字(比如0001.jpeg),如果0001.jpeg已经存在,那么继续保存为0002.jpeg,等等。 我知道用ffmpeg ,当试图从video中保存一个帧时,你可以使用如下的格式保存: /path/to/place/%04d.ext ,它只是做我想要的。 我试着用我的代码,看起来像这样:

gnome-screenshot -w -B -f /home/usr/ws/images_to_process/$%04d.jpeg

我也试过:

gnome-screenshot -w -B -f /home/usr/ws/images_to_process/$(%04d).jpeg

和:

gnome-screenshot -w -B -f /home/usr/ws/images_to_process/%04d.jpeg

但是这并没有奏效。 正如你所看到的,我想不出多less可变性。 有谁知道如何做到这一点?

将本地化语言支持添加到BASH脚本

在Linux脚本中是什么意思? #!/ usr / bin / python -tt

BASH:在printf中格式化string

当信号设置为“DEBUG”假信号时,为什么我的陷阱不工作?

Bash脚本正则expression式

谢谢

如何使用boost program_options读取整数数组?

if语句总是计算为TRUE

使用Sed来replace旧的时间戳与当前的

从bash shell启动一个新的bash shell

获取dynamicIP然后Grep&Echo主机文件

您正在使用正确的数字格式来生成outfile名称,但是您需要一个变量和一个printf来将“/home/usr/ws/images_to_process/%04d.jpeg”转换为“/ home / usr / ws / images_to_process / 0001.jpeg”

我做了一个脚本,使用序列号创建文件,而不覆盖已经存在的文件

#!/bin/bash FILENAME="file_%04d.txt" COUNTER=0 #Change true for your finish condition while true; do target=$(printf $FILENAME $COUNTER) # If not exists file $tarjet # -f check if exist a file # ! not condition if [ ! -f $target ]; then touch $target fi # counter ++ COUNTER=$(($COUNTER + 1)) done

你可以改变“touch $ target”为“gnome-screenshot -w -B -f $ target”和变量“target”为你的outfile名称。 结果脚本是:

#!/bin/bash FILENAME="/home/usr/ws/images_to_process/%04d.jpeg" COUNTER=0 while true; do target=$(printf $FILENAME $COUNTER) if [ ! -f $target ]; then gnome-screenshot -w -B -f $target fi COUNTER=$(($COUNTER + 1)) done

我希望这个信息是有用的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐