请教用cp命令复制文件的脚本
一直用cp命令复制NAS里的文件,感觉很快。但是就是没有进度条。在网上搜到了这个:
http://blog.163.com/lgh_2002/blog/static/44017526201142410617828/
照着做了之后,返回Permission Denied,整不明白了。
我是WVL的机器,请教高手如何制作这个脚本能让WVL远程拷贝出现进度条和完成百分比。谢了! 你要给CP脚本添加权限啊
chmod 775 /usr/bin/CP 本帖最后由 pt880 于 2013-2-3 22:23 编辑
我把它复制过来。
#!/bin/bash
SOURCE=$1
TARGET=$2
#CP=./fack_cp
CP=cp
$CP "$SOURCE" "$TARGET" &
CPID=$!
isalive()
{
out=`ps -p $1 2> /dev/null`
return $?
}
while [ 1 ]; do
{
SSIZE=`/bin/ls -l $SOURCE | awk "{print \\\$5}"`
if [ -f $TARGET ]; then
TSIZE=`/bin/ls -l $TARGET | awk "{print \\\$5}"`
else
TSIZE="0"
fi
PERCENT=`echo "scale=2; $TSIZE/$SSIZE*100" | bc -l`
RATE=`echo "scale=0; 63*$PERCENT/100" | bc -l`
BLUE="\\033[3;44m"
NORMAIL="\\033[0;39m"
BAR=$BLUE
i=0
while [ $i -le 62 ]; do
[ $i = $RATE ] && BAR=$BAR"\\033[7;39m"
BAR=$BAR" "
let i=$i+1
done
BAR=$BAR$NORMAIL
echo -en "\r$BAR ${PERCENT}%"
if ! isalive "$CPID"; then echo -en "\n"; exit; fi
sleep 1
}
done 谢谢!按照你的方法授权,并将楼上内容复制到CP后,返回:
/usr/bin/CP: line 26: bc: command not found
后面还有一大串,请问是哪里有问题? 本帖最后由 pt880 于 2013-2-3 22:55 编辑
notrust 发表于 2013-1-23 21:58 static/image/common/back.gif
谢谢!按照你的方法授权,并将楼上内容复制到CP后,返回:
/usr/bin/CP: line 26: bc: command not found
你机器里面没有bc命令。安装一下bc吧。我就是这样解决的。ipkg install bc pt880 发表于 2013-2-3 22:55
你机器里面没有bc命令。安装一下bc吧。我就是这样解决的。
按照上面方法,wvl都已经完全可以复制文件了,但是复制时候下面的进度条永远都是不动了,表示0%,过一会文件可以完全复制过去,依然是0%什么原因呢?
页:
[1]