對這文章發表回應
發表限制: 非會員 可以發表
發表者: 冷日 發表時間: 2012/7/25 8:29:59
冷日今天測試 Shell 的時候,發生了一個慘案!
那就是 rar(unrar 也一樣)用萬用字元(*.rar)居然會無法解壓縮!?
冷日的 Shell 基本如下:
執行後會出現
No files to extract!
範例:
這問題困擾冷日將近半天,怎麼想都覺得不對阿!?
檔案有找到、命令語法無誤、資料夾權限無誤,到底問題在哪?!
經過半天的 Debug,只能推測 Linux 上的 rar(unrar也測過 N 次了)不支援萬用字元(*.rar)了!
註:冷日知道很不合理,檔案都找到了,運作也開始了,感覺比較像是 rar 內部不知道哪裡出錯,但想不出其他理由,更測不出其他方案阿!
本來都已經放棄了,打算改採 Shell 寫法,就一個一個 rar 透過 shell 抓進來解吧:
突然被某人提醒,參數需要雙引號(")嗎!?
心理雖然覺得不合理,但反正都已經搞了半天了,不差這一下子的測試!
結果~居然就 OK 了!?
所以後來變成這樣寫:
就只是在 那裡加了個雙引號,就完全正常了!真的是太神奇了! 
在這裡分享給大家!
簡單來說, rar(unrar)要用萬用字元時,請記得加上雙引號!
冷日 RAR 版本:
那就是 rar(unrar 也一樣)用萬用字元(*.rar)居然會無法解壓縮!?

冷日的 Shell 基本如下:
$RARPROGRAM e -o+ -sm0 -y -idc,p -ilog$LOGFILE $FTPDOWNLOADFOLDER/*.rar $DESTINATIONFOLDER >> $LOGFILE
執行後會出現
No files to extract!

範例:
[root@Secret_FTP DownloadTmp]# /usr/bin/rar e -o+ -sm0 -y -idc,p -ierr /home/*.rar /home/DestUnRAR
Extracting from /home/data2720100.rar
No files to extract
這問題困擾冷日將近半天,怎麼想都覺得不對阿!?
檔案有找到、命令語法無誤、資料夾權限無誤,到底問題在哪?!

經過半天的 Debug,只能推測 Linux 上的 rar(unrar也測過 N 次了)不支援萬用字元(*.rar)了!

註:冷日知道很不合理,檔案都找到了,運作也開始了,感覺比較像是 rar 內部不知道哪裡出錯,但想不出其他理由,更測不出其他方案阿!

本來都已經放棄了,打算改採 Shell 寫法,就一個一個 rar 透過 shell 抓進來解吧:
for rarfile in $FTPDOWNLOADFOLDER/*.rar
do
$RARPROGRAM e -o+ -sm0 -y -idc,p -ierr $rarfile $DESTINATIONFOLDER >> $LOGFILE
done
突然被某人提醒,參數需要雙引號(")嗎!?
心理雖然覺得不合理,但反正都已經搞了半天了,不差這一下子的測試!
結果~居然就 OK 了!?

所以後來變成這樣寫:
$RARPROGRAM e -o+ -sm0 -y -idc,p -ilog$LOGFILE "$FTPDOWNLOADFOLDER/*.rar" $DESTINATIONFOLDER >> $LOGFILE
就只是在

在這裡分享給大家!
簡單來說, rar(unrar)要用萬用字元時,請記得加上雙引號!

冷日 RAR 版本:
RAR 3.80 Copyright (c) 1993-2008 Alexander Roshal 16 Sep 2008
Shareware version Type RAR -? for help