当前位置: 技术问答>linux和unix
新人学了两天的shell求帮助
来源: 互联网 发布时间:2017-05-05
本文导语: #!/bin/bash #查询sdcard空间,结果放进文件 adb shell df > diskspace.tmp #返回行数 length=`awk 'END{print NR}' diskspace.tmp` #可用空间 free=`awk 'NR==15{print $4 }' diskspace.tmp` free="12M" echo "$free" | grep -q "G" if [ $? -eq 0 ]; ...
#!/bin/bash
#查询sdcard空间,结果放进文件
adb shell df > diskspace.tmp
#返回行数
length=`awk 'END{print NR}' diskspace.tmp`
#可用空间
free=`awk 'NR==15{print $4 }' diskspace.tmp`
free="12M"
echo "$free" | grep -q "G"
if [ $? -eq 0 ]; then
#以G结尾
freeSize=$((${free%G*}*1024*1024))
else
echo "$free" | grep -q "M"
if [ $? -eq 0 ]; then
#以M结尾
freeSize=$((${free%M*}*1024))
else
freeSize=$free
fi
fi
#echo "freeSize:"$freeSize >> android.log
#可用空间小于20M
if(($freeSize > android.log
#查询Camera目录下的文件,结果放进文件
adb shell ls /sdcard/DCIM/Camera > android.tmp
#返回行数
length=`awk 'END{print NR}' android.tmp`
i=1
#循环遍历
while((i rm.tmp
adb shell rm `awk 'NR==1{print}' rm.tmp` >> android.log
#echo "rm $line" >> android.log
fi
i=$(($i+1));
done
fi
红色处需要执行 adb shell rm filepath 可是死活都执行不了。
#查询sdcard空间,结果放进文件
adb shell df > diskspace.tmp
#返回行数
length=`awk 'END{print NR}' diskspace.tmp`
#可用空间
free=`awk 'NR==15{print $4 }' diskspace.tmp`
free="12M"
echo "$free" | grep -q "G"
if [ $? -eq 0 ]; then
#以G结尾
freeSize=$((${free%G*}*1024*1024))
else
echo "$free" | grep -q "M"
if [ $? -eq 0 ]; then
#以M结尾
freeSize=$((${free%M*}*1024))
else
freeSize=$free
fi
fi
#echo "freeSize:"$freeSize >> android.log
#可用空间小于20M
if(($freeSize > android.log
#查询Camera目录下的文件,结果放进文件
adb shell ls /sdcard/DCIM/Camera > android.tmp
#返回行数
length=`awk 'END{print NR}' android.tmp`
i=1
#循环遍历
while((i rm.tmp
adb shell rm `awk 'NR==1{print}' rm.tmp` >> android.log
#echo "rm $line" >> android.log
fi
i=$(($i+1));
done
fi
红色处需要执行 adb shell rm filepath 可是死活都执行不了。
|
bash -vx test.sh
结果贴出来看看
另外,以3gp结尾的文件应该是这样:
结果贴出来看看
另外,以3gp结尾的文件应该是这样:
echo "$line" | grep -q ".3gp$"
|
我知道不可以。
我的意思是让你按照那种方法执行,把过程贴出来。