fswebcam
提供输出为IMG1,IMG2(如果有IMG1),IMG3,IMG4 ...等 我尝试了:
sudo fswebcam img
它将文件存储为Img
,但替换了现有的文件,而不是存储为
Img2.。 如我指定的那样,是否有任何特定类型的UNIX命令可以存储文件名?
或您只能使用其内置的strftime功能来生成每个文件,并在文件名中的当前时间生成每个文件
--save pic%Y-%m-%d_%H:%M:%S.jpg
f() {
PREFIX="./img"
FILES=$(ls $PREFIX* 2> /dev/null)
LAST=$(sort -n <<<"${FILES//$PREFIX}" | tail -n1)
echo $PREFIX$((LAST+1))
}
FILES
包含由LAST
$PREFIX
是最后一个文件名增加了1.
,一旦您定义了
echo
(或更重要的名称),您可以以这样的方式调用命令:
f
示例
sudo fswebcam $(f)
$ ls
img1 img10 img11 img2 img3 img4 img5 img6 img7 img8 img9
$ echo $(f) # here I'm using "echo" instead of "sudo fswebcam"
./img12
步骤
f
$ FILES=$(ls $PREFIX* 2> /dev/null)
$ cat <<<"$FILES"
./img1
./img10
./img11
./img2
./img3
./img4
./img5
./img6
./img7
./img8
./img9
$ LAST=$(sort -n <<<"${FILES//$PREFIX}" | tail -n1)
$ echo $LAST
11
$ echo $PREFIX$((LAST+1))
./img12
这将每10秒拍照并将其保存到新的文件名中。