iPhone有现场照片的,我想我可以使用VLC在Windows或一些iPhone应用程序采取所需画面的静态。长话短说,你可以但图像的质量以及分辨率大大降低。所以我放弃了这个。
问题
我沿着侧隐藏实际的电影文件的Live照片的
我的目标
使用Cygwin运行一个bash shell脚本,通过0000迭代至9999,找到所有只有同一个名字的JPG和MOV文件。
问题
我有与regex
问题我试过ls | grep -E "IMG_0016\.(JPG|MOV)"
我需要一个bash脚本,如果它发现既为JPG和MOV文件,将返回true给定的文件名。这是可以在一个班轮中?任何人都可以给我一些关于如何使上述bash命令更健壮的想法吗?
它发现两者,但我怎么说,好,好,你有两个,现在做这两个文件以下。
编辑
!/斌/庆典
for i in $(seq -f "%04g" 0 20)
do
FILENAME="IMG_$i"
#echo "$FILENAME"
var=$(ls -l | grep "$FILENAME" | grep -E "(JPG|MOV)" | wc -l)
if [ "$var" == 2 ] ; then
echo we found both for $FILENAME
echo $var
fi
done
输出
we found both for IMG_0018
2
we found both for IMG_0019
2
预期
目录中的文件有:
- IMG_0016.JPG
- IMG_0018.JPG
- IMG_0018.MOV
- IMG_0019.JPG
- IMG_0019.MOV
COMMENT
这是很好的感觉它只查找2个文件,但是必须有更好的方式来查找ONE JPG和ONE MOV ??
EDIT 2
#!/bin/bash
for i in $(seq -f "%04g" 0 20)
do
FILENAME="IMG_$i"
#echo "$FILENAME"
var=$(ls -l | grep "$FILENAME" | grep -E "(JPG|MOV)" | wc -l)
#echo $var
if [ "$var" == 2 ] ; then
#echo we found both for $FILENAME
var=$(ls -l | grep "$FILENAME" | grep -E JPG | wc -l)
if [ "$var" == 1 ] ; then
var=$(ls -l | grep "$FILENAME" | grep -E MOV | wc -l)
if [ "$var" == 1 ] ; then
mv "D:\Mike\Pictures\TEST\\$FILENAME.JPG" "D:\Mike\Pictures\TEST\MATCH\\$FILENAME.JPG"
mv "D:\Mike\Pictures\TEST\\$FILENAME.MOV" "D:\Mike\Pictures\TEST\MATCH\\$FILENAME.MOV"
fi
fi
fi
done
'[[-f IMG_016.JPG && -f IMG_O16.MOV]]'只有在两个文件都存在的情况下才会返回true。追加'; echo文件对状态= $?'来查看视觉值。祝你好运。 – shellter
@shellter感谢您的回复!我添加了我的move.sh文件。我试过你的上面的代码,但遗憾的是新的。我不确定如何使用它。我试过'ls | grep [[-f IMG_018.JPG && -f IMG_O18.MOV]]'哪个没有工作 – codeCompiler77