在linux下進行學習時,發現有乙個學習資源資料夾下含有大量的rar格式壓縮包,便想著利用bash shell 寫乙個指令碼來一次性解壓所有的壓縮包.
首先測試該段**能否正常判斷每個資料夾下rar檔案是否存在:
#迴圈遍歷部分
i=1#[ ]與內部字元間應該有空格
while [ $i -lt 25 ]
do#-f 引數 判斷資料夾下的檔案是否存在
file="/home/yang/downloads/php_resource/day$/day$.rar"
if [ -f "$file" ]
# if [ $i -lt 24 ]
then
#unrar x /home/yang/downloads/php_resource/day$/day$.rar
echo "$file"
filet "i++"
done
測試結果如下:
看到這個結果我發現有的資料夾中rar檔案已解壓,這是再解壓就要求unrar解壓中引數包含覆蓋功能.
在終端內: man unrar:
另一種解決方法是對是否已存在該目錄進行判斷:
#迴圈遍歷部分
i=1#[ ]與內部字元間應該有空格
while [ $i -le 25 ]
do#-f 引數 判斷資料夾下的檔案是否存在
刪除注釋,開啟unrar解壓命令:
但是發生了一件不幸的事,每個資料夾的檔案沒有解壓到單獨資料夾:
於是,便需要先刪除它們然後再修改解壓命令:
#迴圈遍歷部分
i=1#[ ]與內部字元間應該有空格
while [ $i -le 25 ]
do#-f 引數 判斷資料夾下的檔案是否存在
file="/home/yang/downloads/php_resource/day$/day$.rar"
filedir="/home/yang/downloads/php_resource/day$/day$/"
filedir2="/home/yang/downloads/php_resource/day$/"
if [[ -f "$file" && ! -d "$filedir" ]]
# if [ $i -lt 24 ]
then
cd $filedir2
ls | grep -v "rar"
#用於刪除非rar目錄及檔案
#rm -f `ls | grep -v "rar"`
#rm -r `ls | grep -v "rar"`
unrar x -o+ /home/yang/downloads/php_resource/day$/day$.rar /home/yang/downloads/php_resource/day$/
filet "i++"
done
ok! pefect! 該問題終於解決了! 自己寫的乙個linux下的bash安裝
每次安裝linux下的包的時候都要乙個個config make make install安裝,煩,抽了個空,查了些資料,寫了個bash安裝指令碼,分別安裝了openldapujs freeradiusujs及checkuserujs包,安裝時只需.install.sh即可,這三個包放在與instal...
用golang寫乙個proxy
我複雜的網路環境中,proxy是個很有用的工具,我們可以通過proxy 幫我們完成網路流量的 這個proxy得先能接收請求,所以這裡先啟動乙個tcp的監聽,獲取請求 func s server start glog.infof proxy listen in s,waiting for connec...
用python寫乙個restful API
coding utf 8 package.module python實現的圖書的乙個restful api.restful api 一般模式 get select 從伺服器取出資源 一項或多項 post create 在伺服器新建乙個資源。put update 在伺服器更新資源 客戶端提供改變後的完...