Linux Shell 判断文件or目录是否存在,并做相应的操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/q1075355798/article/details/84580949

一个脚本:

  1. 判断某个目录是否存在,不存在则创建;
  2. 判断某个文件是否存在指定目录,不存在,则从别的地方拷贝到指定目录;
  3. 将操作过程 or 调试信息输出到一个 log 文件,以便 debug
#!/system/bin/sh

#log file
poc_log="/etc/log.txt"
poc_dir="/etc/.file/"
data_apk="/etc/xxx.apk"
data_png="/etc/xxx.png"
sdcard_apk="/etc/.file/xxx.apk"
sdcard_png="/etc/.file/xxx.png"

if [ -f ${proc_log} ]; then
	echo ${proc_log}
	rm -f ${proc_log}
fi

echo "prepare xxx.png & xxx.apk...." > ${poc_log}

if [ ! -d ${poc_dir} ]; then
	echo "mkdir ${poc_dir} ..." >> ${poc_log}
	mkdir ${poc_dir}
else
	echo "${poc_dir} is already existting ..." >> ${poc_log}
fi

chown system system ${data_png}
chown system system ${data_apk}
chmod 0777 ${data_png}
chmod 0777 ${data_apk}

if [ ! -f ${sdcard_png} ]; then
	echo "copy xxx.png to ${poc_dir} ..." >> ${poc_log}
	cp ${data_png} ${sdcard_png}
else
	echo "${sdcard_png} is already existting ..." >> ${poc_log}
fi

if [ ! -f ${sdcard_apk} ]; then
	echo "copy xxx.apk to ${poc_dir} ..." >> ${poc_log}
	cp ${data_apk} ${sdcard_apk}
else
	echo "${sdcard_apk} is already existting ..." >> ${poc_log}
fi

ls -al ${poc_dir} >> ${poc_log}

echo "prepare xxx.png & xxx.apk end!!!" >> ${poc_log}

语法注意:[ -f ${proc_log} ] 里面的内容,注意和方括号的空格,否则会报错。

关联链接: Init.rc妙用及语法说明

猜你喜欢

转载自blog.csdn.net/q1075355798/article/details/84580949