【发布时间】:2009-11-21 03:06:26
【问题描述】:
#!/bin/sh
#My script
echo "Are you sure you want to reorganize your files?"
echo "Type y or Y to continue. Anything else will stop the process"
read response
if [ "$response" = "y" ] || [ "$response" = "Y" ]; then
mkdir video
mkdir audio
mkdir text
mv -v *.txt text >> log.txt
mv -v *.wmv video >> log.txt
mv -v *.mov video >> log.txt
mv -v *.mpg video >> log.txt
mv -v *.mp3 audio >> log.txt
mv -v *.wma audio >> log.txt
echo "Yay, it worked!"
else
echo "Nothing happened."
fi
我编写了上面的脚本来将文件组织到子文件夹中。例如,音乐文件将进入音频文件夹。现在我想更进一步,让它更全球化。我想允许脚本接受一个命令行参数,它是包含未组织文件的文件夹。这应该允许脚本在文件系统中的任何位置定位和运行,并接受任何无组织文件的文件夹。
例子:
organizefiles.sh mystuff/media // 子文件夹将进入“media”
文件夹 media 包含所有媒体文件。
谢谢!
【问题讨论】:
-
一个可能的改进:mv -v *.{wmv,mov,mpg} video >> log.txt