2013-10-12 115 views

回答

0

也许类似的东西?

#!/bin/bash 

for i in $(find $1 -printf "%f\n") 
do 
    find $2 -name $i -print 
done 

而且你可以把它叫做:

./script.sh ~/newmusics ~/oldmusics 
+0

我修改了脚本。 –

0

你接近,但你有一个错误的参数扩展和一个错字:filname VS filename,所以:

#!/bin/bash 

dir1="$1" 
dir2="$2" 
log=~/log.txt 

for i in "$dir1"/*;do 
    filename="${i##*/}" 
    if [ ! -e "$dir2/$filename" ];then 
     echo "$filename" | tee -a "$log" 
    fi 
done 

然后,你可以这样调用脚本:

./script.sh dir1 dir2