用脚本删除linux服务器下某目录下的文件 linux shell如何删除指定目录下的文件夹,而不删除文...

linux \u4e0b\u5982\u4f55\u7f16\u5199\u5b9a\u65f6\u5220\u9664\u67d0\u76ee\u5f55\u4e0b\u6587\u4ef6\u7684\u811a\u672c\uff1f

\u81ea\u5df1\u7f16\u5199crontab\u8bbe\u5b9a\u8ba1\u5212\u4efb\u52a1\u5c31\u662f\u4e86\uff0c \u90a3\u4e2a\u670d\u52a1\u5c31\u662f\u505a\u8fd9\u4e9b\u5b9a\u65f6\u7684\uff0c\u81ea\u52a8\u5316\u7684\u5de5\u4f5c\u7528\u7684\u3002\u8981\u5199\u4ec0\u4e48\u811a\u672c\u7684\uff0c\u4e00\u4e2a\u547d\u4ee4\u641e\u5b9a\u3002
\u7ed9\u4f60\u4e2a\u624b\u518c\u9875\u81ea\u5df1\u770b\u5427\u3002

\u8865\u5145\u56de\u7b54\uff1a
\u8fd0\u884c\u8fd9\u4e2a\u547d\u4ee4\uff1a
crontab -e
\u6b64\u547d\u4ee4\u5c06\u6253\u5f00\u4e00\u4e2a\u6587\u672c\u7f16\u8f91\u5668\u4ee5\u6dfb\u52a0\u65b0\u4efb\u52a1\u3002
* 20 * * * rm -rf /root/febhost/dat/* /root/febhost/log/*

\u7528\u5bf9\u5e94\u7684\u6587\u672c\u7f16\u8f91\u5668\u547d\u4ee4\u4fdd\u5b58\u9000\u51fa\uff08vi\u7f16\u8f91\u5668\u662f\u6309esc\u540e\u6253:wq\uff09

\u5982\u679c\u4f60\u5bf9\u8fd9\u79cd\u65b9\u5f0f\u4e0d\u719f\u6089\uff0c\u4e5f\u53ef\u4ee5\u76f4\u63a5\u6539/etc/crontab\uff0c\u6211\u770b\u5230\u4f60\u662f\u8981\u5220\u9664root\u6587\u4ef6\u5939\u5185\u7684\u76ee\u5f55\uff0c\u5047\u8bbe\u4f60\u6709root\u6743\u9650\uff08\u56e0\u4e3a/etc/crontab\u6240\u6709\u8005\u662froot\uff0c\u5e76\u4e14\u53ea\u6709\u4ee5root\u8eab\u4efd\u6267\u884c\u5220\u9664\u547d\u4ee4\u624d\u80fd\u5220\u9664root home\u5185\u7684\u6587\u4ef6\uff09\uff0c\u7528\u4ee5\u4e0b\u547d\u4ee4\u6253\u5f00\u6b64\u6587\u4ef6\uff1a
vi /etc/crontab
\u5c06\u5149\u6807\u79fb\u52a8\u81f3\u6700\u540e\u4e00\u884c\uff0c\u6309o\u952e\u65b0\u5f00\u4e00\u884c\u8f93\u5165\u4ee5\u4e0b\u5185\u5bb9\uff1a
* 20 * * * root rm -rf /root/febhost/dat/* /root/febhost/log/*

\u7ed9\u4f60\u89e3\u91ca\u4e0b\u6b64\u884c\u7684\u542b\u4e49\u5427\uff0c\u524d\u4e94\u4e2a\u4ee54\u4e2a\u7a7a\u683c\u5206\u9694\u5f00\u7684\u503c\u4f9d\u6b21\u8868\u793a\uff1a\u5206\u3001\u65f6\u3001\u65e5\u3001\u6708\u3001\u5468\uff0c\u5982\u679c\u53d6\u6240\u6709\u503c\u5c31\u662f\u6253*\u53f7\uff0c\u5982\u679c\u4f60\u60f3\u5468\u671f\u6027\u7684\u8fd0\u884c\u4e00\u4e2a\u4efb\u52a1\uff0ccrontab\u4e5f\u63a5\u53d7\u8303\u56f4\u6307\u5b9a\uff0c\u6bd4\u5982\u8bf4\u4e00\u5929\u4e2d\u7684\u65e98\u70b9\u5230\u665a6\u70b9\u6bcf\u9694\u4e00\u5c0f\u65f6\uff08\u5c31\u662f\u6bcf\u4e24\u5c0f\u65f6\uff0c\u5c06\u4f1a\u57288,10,12,14,16,18\u6267\u884c\uff09\u6267\u884c\u4f60\u8fd9\u4e2a\u5220\u9664\u547d\u4ee4\u8fd9\u6837\u5199\uff1a
* 8-18/2 * * * root rm -rf /root/febhost/dat/* /root/febhost/log/*
\u7b2c\u4e00\u4e2a\u5b57\u6bb5\u662f\u5206\u949f\uff0c\u53d6\u503c\u8303\u56f4\uff1a0-59
\u7b2c\u4e8c\u4e2a\u5b57\u6bb5\u662f\u5c0f\u65f6\u3002\u53d6\u503c\u8303\u56f4\uff1a0-23
\u7b2c\u4e09\u4e2a\u5b57\u6bb5\u662f\u4e00\u4e2a\u6708\u4e2d\u7684\u7b2c\u51e0\u5929\uff0c\u53d6\u503c\u8303\u56f4\uff1a1-31
\u7b2c\u56db\u4e2a\u5b57\u6bb5\u662f\u4e00\u5e74\u4e2d\u7684\u7b2c\u51e0\u4e2a\u6708\uff0c\u53d6\u503c\u8303\u56f4\uff1a1-12
\u6700\u540e\u4e00\u4e2a\u5b57\u6bb5\u662f\u4e00\u4e2a\u661f\u671f\u4e2d\u7684\u7b2c\u51e0\u5929\uff0c\u4ee5\u661f\u671f\u5929\u5f00\u59cb\u4f9d\u6b21\u7684\u53d6\u503c\u4e3a0\uff5e7\uff0c0\u30017\u90fd\u8868\u793a\u661f\u671f\u5929\u3002
\u4e0b\u4e00\u4e2a\u5b57\u6bb5\u662f\u6267\u884c\u8be5\u547d\u4ee4\u7684\u7528\u6237\u8eab\u4efd\uff0c\u8fd9\u91cc\u662froot\u7528\u6237\uff0c\u6700\u540e\u4e00\u4e2a\u5b57\u6bb5\u5c31\u662f\u5b9a\u65f6\u8fd0\u884c\u7684\u547d\u4ee4\u3002

\u601d\u8def\uff1a
\u4f60\u8981\u904d\u5386\u76ee\u5f55\u4e0b\u7684\u6240\u6709\u6587\u4ef6 \u6587\u4ef6\u5939
\u5224\u65ad\u662f\u5426\u6587\u4ef6 \u662f\u6587\u4ef6\u5c31\u4e0d\u64cd\u4f5c \u662f\u6587\u4ef6\u5939\u5c31\u6267\u884c\u5220\u9664\u64cd\u4f5c
\u5927\u81f4\u601d\u8def\u5c31\u662f\u8fd9\u6837

declare -i flag 设置flag;
for I in `ls 目录`; do 遍历目录
flag=0 假设0为不存在
for J in `获取数据库文件名列表`; do 遍历数据文件名
if I == J; then 如果存在就跳出循环;
flag=1 设置存在标签
break 跳出内层循环
fi
done
if [ $flag -eq 0 ]; then 如果flag没有改变,那么文件是不存在的;
rm -rf $I 删除文件
fi
done

把sql查出来存在file1
把目录下文件名find出来存在file2
diff一下,获取file2里不在file1里的
删掉

  • linux shell 鑴氭湰,鎵归噺鍒犻櫎
    绛旓細{system("echo " $2 " more than " 20*1024*1024)}; }'娉細鎴戝枩娆㈢敤awk澶勭悊澶氳鏂囨湰锛屽彲璁$畻鏁板瓧鍙堟湁瀛楃涓插鐞嗐俿ystem()鏄痝awk璋冪敤shell鍛戒护鐨勫嚱鏁帮紝鐜板湪鏄樉绀轰俊鎭屽凡锛屽鏋滀綘鎹㈡垚锛歴ystem("rm -fr " $2 ";mkdir " $2) 锛屽垯鏄鍒犻櫎鏁翠釜www鐩綍锛屽苟閲嶅缓涓涓獁ww鐩綍銆
  • 鏈汉鎯冲啓涓涓linux鑴氭湰,鑷姩鍒犻櫎6涓湀浠ュ墠鐨/usr/out.dat鏁版嵁
    绛旓細vim /tmp/test.sh 涓嬮潰鍐呭涓鑴氭湰鍐呭 !/bin/bash dir=/usr/ find $dir -name "out.dat.*" -type f -mtime +180 -exec rm {} \; > /dev/null 2>&1 鑴氭湰瀹屾垚 wq淇濆瓨閫鍑 chmod 755 test.sh 鍦╟rontab涓啓鍏ヨ嚜鍔ㄦ墽琛岃鍒 crontab -e 0 * * * /tmp/test.sh 璁″垝浠诲姟鍐欏畬 wq淇濆瓨...
  • linux涓濡備綍鎵归噺鍒犻櫎鏂囦欢鍚嶇殑鏌愪釜瀛楃涓
    绛旓細鍙互閫氳繃shell鑴氭湰鏉ュ疄鐜帮紝鑴氭湰涓殑鍛戒护濡備笅 for file_old in `ls`;do file_new=`echo "$file_old"| sed 's/The//g'`mv file_old file_new 杩欐牱灏辨妸鏂囦欢鍚嶄腑鍚湁The鐨勬枃浠惰浆鍙樹负浜嗕笉鍚玊he鐨勬枃浠
  • 濡備綍鍦Linux鏈嶅姟鍣涓浣跨敤iScanner鍒犻櫎缃戦〉鎭舵剰浠g爜?
    绛旓細Linux鏈嶅姟鍣涓婁娇鐢╥Scanner鍒犻櫎缃戦〉鎭舵剰浠g爜鐨勬柟娉</鍦↙inux鏈嶅姟鍣ㄤ笂锛岃鍊熷姪iScanner娓呯悊鎭舵剰浠g爜锛岄鍏堥渶瑕佸畨瑁匯uby瑙i噴鍣紝鍥犱负iScanner鏄敤Ruby缂栧啓鐨勩傝纭繚鏈嶅姟鍣ㄥ凡瀹夎锛屽鏈畨瑁呭彲閫氳繃yum鎴朼pt-get鍛戒护瀹夎锛歽um install ruby 鎴 # apt-get install ruby 鐒跺悗锛屼笅杞藉苟瀹夎iScanner锛屾彁渚涘畨瑁呭拰鍗歌浇...
  • linux绯荤粺涓鎬庝箞寮鏈烘墽琛鍒犻櫎鏌涓枃浠躲傚懡浠?杩樻槸闇鍐鑴氭湰銆傚府甯垜
    绛旓細vi /etc/rc.local rm -rf /asdfasd/adsfasdf/浣犺鍒犻櫎鐨勬枃浠剁粷瀵硅矾寰勩傜劧鍚:wq
  • linux涓嬪垹闄鏂囦欢澶氫釜鏂囦欢闂
    绛旓細鍙互鐩存帴鍐鑴氭湰锛屾瘡澶╁畾鏃鍒犻櫎锛氫緥濡傦細锛堝垹闄/data/bak鐩綍涓嬩互20寮澶达紝鍚庣紑涓*.jar.gz锛屾洿鏀规椂闂磋窛鐜板湪5澶╀互鍓嶇殑鎵鏈夋枃浠讹紝涔熷氨鏄鍙繚鐣欐渶杩5澶╃殑澶囦唤鏂囦欢锛塮ind /data/bak -name "20*.jar.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1 /data/bak 澶囦唤鐩綍锛堟敼鎴愪綘...
  • linux 鑴氭湰鍒犻櫎鏌鏂囦欢澶瑰彧鏈200k鐨勬枃浠?
    绛旓細find /dir -size 200k -exec rm {} \;
  • linux 瀹氭湡鍒犻櫎鏂囦欢澶逛笅闈㈣秴杩30鏃ョ殑鏂囦欢
    绛旓細find /tmp/sm{a,b,c} -type f -mtime 30 -exec rm {} \;闇瑕佸畾鏈燂紝灏辨妸杩欐潯鍛戒护鏀惧叆crontab涓嵆鍙
  • 鍏徃鏌愬憳宸ヨ緸鑱屽悗,鍦linux鏈嶅姟鍣涓暀涓嬩簡姝ゅ憳宸ュ垱寤虹殑澶ч噺鏃犵敤鏂囦欢,濡...
    绛旓細鍋囧畾姝ゅ憳宸ュ笎鍙蜂负 abc锛宖ind /path/to/abc -type f -user abc -exec rm -f {} \;鐢ㄤ笂闈㈢殑鍛戒护鏉ユ煡鎵捐矾寰 /path/to/abc 涓嬫墍鏈夌敱 abc杩欎釜甯愬彿鐨勬枃浠讹紝骞鍒犻櫎銆 鍋囧畾杩欎釜鍛樺伐鍙兘鍦ㄧ郴缁熶笂浠绘剰涓涓洰褰曚笅瀛樻湁鏂囦欢 锛堜竴鑸笉鍙兘锛屾櫘閫氱敤鎴峰彧鑳藉湪鑷繁鐨刪ome鐩綍涓嬪垱寤烘枃浠讹級锛岄偅涔堝氨鎶 /path/to/...
  • linux涓璕PM鍛戒护鍒犻櫎杞欢闂
    绛旓細1銆侀鍏堝湪linux涓緭鍏pm 锛峣vh 杞欢鍖呭悕锛屽畨瑁呰蒋浠跺寘骞舵樉绀哄畨瑁呰繘搴︺2銆佹帴鐫杈撳叆rpm -qa锛屽彲浠ユ煡璇㈠凡缁忓畨瑁呭摢浜涜蒋浠跺寘銆3銆佺劧鍚庤緭鍏pm -q 杞欢鍖呭悕锛屽彲浠ユ煡璇㈡寚瀹氳蒋浠跺寘鏄惁宸茬粡瀹夎銆4銆佹帴鐫杈撳叆rpm -Uvh 杞欢鍖呭悕锛屽彲浠ュ崌绾т竴涓蒋浠跺寘銆5銆佹渶鍚庤緭鍏pm -e 杞欢鍖呭悕锛鍒犻櫎鎸囧畾杞欢鍖呫
  • 扩展阅读:linux服务器测速脚本 ... linux定时任务crontab ... linux nohup ... linux mount 挂载目录 ... linux定时重启机器脚本 ... linux循环执行命令脚本 ... linux fdisk 删除分区 ... linux删除服务命令 ... linux服务器定时重启脚本 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网