『壹』 Linux 涓嬫竻絀烘垨鍒犻櫎澶ф枃浠跺唴瀹圭殑鍑犵嶆柟娉
Linux 緇堢涓嬪勭悊鏂囦歡鏃訛紝鏈夋椂鎴戜滑鎯崇洿鎺ユ竻絀烘枃浠剁殑鍐呭逛絾鍙堜笉蹇呬嬌鐢ㄤ換浣昄inux鍛戒護琛岀紪杈戝櫒 鍘繪墦寮榪欎簺鏂囦歡銆傞偅鎬庢牱鎵嶈兘杈懼埌榪欎釜鐩鐨勫憿錛熷湪榪欑瘒鏂囩珷涓錛屾垜浠灝嗕粙緇嶅嚑縐嶅熷姪涓浜涘疄鐢ㄧ殑鍛戒護鏉ユ竻絀烘枃浠跺唴瀹圭殑鏂規硶銆
娉ㄦ剰錛氱敱浜庡啀Linux涓涓鍒囩殕鏂囦歡錛屼綘闇瑕佹椂鍒繪敞鎰忥紝紜淇濅綘灝嗚佹竻絀虹殑鏂囦歡涓嶆槸閲嶈佺殑鐢ㄦ埛鏂囦歡鎴栬呯郴緇熸枃浠躲傛竻絀洪噸瑕佺殑緋葷粺鏂囦歡鎴栬呴厤緗鏂囧厔鐏惰佷歡鍙鑳戒細寮曞彂涓ラ噸鐨勫簲鐢ㄥけ璐ユ垨鑰呯郴緇熼敊璇銆
鎻愮ず錛氬湪涓嬮潰鐨勭ず渚嬩腑錛屾垜浠灝嗕嬌鐢ㄥ悕涓 access.log 鐨勬枃浠舵潵浣滀負紺轟緥鏍鋒湰銆傛兂瑕佷簡瑙f洿澶氬叧浜巜indows錛宭inux鐨勭煡璇嗗彲浠ュ幓銆妉inux灝辮ヨ繖涔堝︺嬬湅鐪嬨
1. 閫氳繃閲嶅畾鍚戝埌 Null 鏉ユ竻絀烘枃浠跺唴瀹 娓呯┖鎴栬呰╀竴涓鏂囦歡鎴愪負絀虹櫧鐨勬渶綆鍗曟柟寮忥紝鏄鍍忎笅闈㈤偅鏍鳳紝閫氳繃 shell 閲嶅畾鍚 null 錛堜笉瀛樺湪鐨勪簨鐗╋級鍒拌ユ枃浠訛細 # access.log
涓嬮潰鎴戜滑灝嗕嬌鐢 : 絎﹀彿錛屽畠鏄 shell 鐨勪竴涓鍐呯疆鍛戒護錛岀瓑鍚屼簬 true 鍛戒護錛屽畠鍙琚鐢ㄦ潵浣滀負涓涓 no-op錛堝嵆涓嶈繘琛屼換浣曟搷浣滐級銆傚彟涓縐嶆竻絀烘枃浠剁殑鏂規硶鏄灝 :鎴栬卼rue 鍐呯疆鍛戒護鐨勮緭鍑洪噸瀹氬悜鍒版枃浠朵腑錛屽叿浣撳備笅錛 # : access.log # true access.log
3. 浣跨敤 cat/cp/dd 瀹炵敤宸ュ叿鍙 /dev/null 璁懼囨潵娓呯┖鏂囦歡 鍦 Linux 涓錛 null 璁懼囧熀鏈涓婅鐢ㄦ潵涓㈠純鏌愪釜榪涚▼涓嶅啀闇瑕佺殑杈撳嚭嫻侊紝鎴栬呬綔涓烘煇涓杈撳叆嫻佺殑絀虹櫧鏂囦歡錛岃繖浜涢氬父鍙浠ュ埄鐢ㄩ噸瀹氬悜鏈哄埗鏉ヨ揪鍒幫紝鎵浠 /dev/null 璁懼囨枃浠舵槸涓涓鐗規畩鐨勬枃浠訛紝瀹冨皢娓呯┖閫佸埌瀹冭繖閲屾潵鐨勬墍鏈夎緭鍏ワ紝鑰屽畠鐨勮緭鍑哄垯鍙琚瑙嗕負涓涓絀烘枃浠躲傚彟澶栵紝浣犲彲浠ラ氳繃浣跨敤 cat鍛戒護 鏄劇ず /dev/null 鐨勫唴瀹圭劧鍚庨噸瀹氬悜杈撳嚭鍒版煇涓鏂囦歡錛屼互姝ゆ潵杈懼埌娓呯┖璇ユ枃浠剁殑鐩鐨勩 # cat /dev/null access.log 涓嬮潰錛屾垜浠灝嗕嬌鐢 cp鍛戒護 澶嶅埗 /dev/null 鐨勫唴瀹瑰埌鏌愪釜鏂囦歡鏉ヨ揪鍒版竻絀鴻ユ枃浠剁殑鐩鐨勶紝鍏蜂綋濡備笅鎵紺猴細 # cp /dev/null access.log 鑰屼笅闈㈢殑鍛戒護涓錛 if 浠h〃杈撳叆鏂囦歡錛宱f 浠h〃杈撳嚭鏂囦歡銆 # dd if=/dev/null of=access.log
4. 浣跨敤 echo 鍛戒護娓呯┖鏂囦歡 鍦ㄨ繖閲岋紝浣犲彲浠ヤ嬌鐢 echo鍛戒護 灝嗙┖瀛楃︿覆鐨勫唴瀹歸噸瀹氬悜鍒版枃浠朵腑錛屽叿浣撳備笅錛 # echo "" access.log 鎴栬 # echo access.log 娉ㄦ剰錛氫綘搴旇ヨ頒綇絀哄瓧絎︿覆騫朵笉絳夊悓浜 null 銆傚瓧絎︿覆琛ㄦ槑瀹冩槸涓涓鍏蜂綋鐨勪簨鐗╋紝鍙杈╁巻涓嶈繃瀹冪殑鍐呭瑰彲鑳芥槸絀虹殑錛屼絾 null 鍒欐剰鍛崇潃鏌愪釜浜嬬墿騫朵笉瀛樺湪銆傚熀浜庤繖涓鍘熷洜錛屽綋浣犲皢 echo鍛戒護 鐨勮緭鍑轟綔涓鴻緭鍏ラ噸瀹氬悜鍒版枃浠跺悗錛屼嬌鐢╟at鍛戒護鏉ユ煡鐪嬭ユ枃浠剁殑鍐呭規椂錛屼綘灝嗙湅鍒頒竴涓絀虹櫧琛岋紙鍗充竴涓絀哄瓧絎︿覆錛夈傝佸皢 null 鍋氫負杈撳嚭杈撳叆鍒版枃浠朵腑錛屼綘搴旇ヤ嬌鐢 -n 閫夐」錛岃繖涓閫夐」灝嗗憡璇 echo 涓嶅啀鍍忎笂闈㈢殑閭d釜緹″崌鍛戒護閭f牱杈撳嚭緇撳熬鐨勯偅涓鏂拌屻 # echo -n "" access.log
5. 浣跨敤 truncate 鍛戒護鏉ユ竻絀烘枃浠跺唴瀹 truncate 鍙琚鐢ㄦ潵灝嗕竴涓鏂囦歡緙╁皬鎴栬呮墿灞曞埌鏌愪釜緇欏畾鐨勫ぇ灝忋備綘鍙浠ュ埄鐢ㄥ畠鍜 -s 鍙傛暟鏉ョ壒鍒鎸囧畾鏂囦歡鐨勫ぇ灝忋傝佹竻絀烘枃浠剁殑鍐呭癸紝鍒欏湪涓嬮潰鐨勫懡浠や腑灝嗘枃浠剁殑澶у皬璁懼畾涓 0: # truncate -s 0 access.log 鎴戣佷粙緇嶇殑灝辨槸榪欎箞澶氫簡銆傚湪鏈鏂囦腑錛屾垜浠浠嬬粛浜嗗嚑縐嶉氳繃浣跨敤涓浜涚畝鍗曠殑鍛戒護琛屽伐鍏峰拰 shell 閲嶅畾鍚戞満鍒舵潵娓呴櫎鎴栨竻絀烘枃浠跺唴瀹圭殑鏂規硶銆
『貳』 linux下如何根據文件大小來清除文件內容
重定向吧~ 貌似Linux沒有獲取文件大小的函數吧,不太清楚
system("ls -l ss.log > file");
把文件的信息重定向到一個文件,然後讀該文件, 解析第5個字元串就知道文件的大小了~
超過100*1024*1024就system("rm ss.log");