Mac bash脚本用于组织下载的文件类型

时间:2011-11-06 20:42:13

标签: macos bash

系统:Mac OSX 10.6.8
壳牌:Bash Shell(终端)

我正在尝试编写一个有选择地组织我的下载文件夹的脚本。

目的:
- 当脚本打开时,从具有特定文件类型的浏览器(例如“.rar”)下载的任何文件都保存在Downloads(例如:“rar_downloads”)的子目录中(例如:“rar_downloads”)。 - 不影响下载目录中的当前文件
- 当脚本关闭时,下载的文件会正常保存到下载目录。

我很感激有关如何写这篇文章的任何见解。谢谢!

1 个答案:

答案 0 :(得分:0)

简短概述:您需要两个时间戳,脚本开启和脚本关闭,用于定义移动的时间范围。让脚本连续工作是相当困难的,因为你需要浏览器集成,所以手动运行(或通过crontab)。

粗略轮廓:

find Downloads -newer script-on -and -not -newer script-off | while read filename; do
     SUFFIX=`echo "$filename" | sed -n -e 's/.*\.\([^./]*\)$/\1/p'`;
     if [ -n "$SUFFIX" ]; then mv "$filename" "Downloads/${SUFFIX}_downloads"; fi
done

第2行中的sed表达式提取后缀,即最后一个后面的文件名的末尾部分。在最后一个组件中,如果没有后缀,则不打印输出。