我使用以下代码将我的CCTV录制和捕获分类为超过一天的日期子目录。
有没有办法将echo grep date
代码的IF
部分的结果作为变量引用,以便在创建文件夹时可以使用它?
我可以在一个单独的行上创建一个变量,使用另一个grep
(或定义变量并在IF
语句中引用它),但是如果全部在一行上则更喜欢。
文件名类似于' MDAlarm_20160417-120925.jpg'所以变量的内容将是2016-04-17。
for f in ~/FI9803P_00626E5755DE/**/*;
do
if [[ `echo $f | grep -oP '\d{8}' | date -f - +'%Y-%m-%d'` != `date +'%Y-%m-%d'` ]]; then
mkdir -p $(dirname $f)/$varFromIF; echo "Made it" #mv $f $(dirname $f)/$varFromIF
fi
done
答案 0 :(得分:1)
是。你可以这样做:
for f in ~/FI9803P_00626E5755DE/**/*;
do
if [[ "${varFromIF=$(echo $f | grep -oP '\d{8}' | date -f - +'%Y-%m-%d')}" != $(date +'%Y-%m-%d') ]]; then
mkdir -p $(dirname $f)/$varFromIF; echo "Made it" #mv $f $(dirname $f)/$varFromIF
fi
done