PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Linux
[問題] shellscript檔案名稱有空格如何篩選跟tar
作者:
raynoz
(Rayoz)
2021-08-12 07:19:52
不好意思又是我...
但我已經找遍各種方法都無解 只好再來麻煩各位(可能方向錯誤)
是這樣的我在我的資料夾/NAS/Ray內放了以下檔案
20210615 - A.xls
20210720 - A.xls
20210725 - A.xls
20210803 - A.xls
而我想要在每個月1號將上個月的資料全部打包命名為年+月
像是8/1 將檔名開頭為202107的檔案打包命名為2107.tar.gz
我的寫法:
last_month=$(date -d "$date +%Y%m)01 last month" +%Y%m)
file=$(ls $last_month*)
cd /NAS/Ray/
tar -zcvPf /NAS/Ray/2107.tar.gz $file
執行後顯示錯誤訊息
ls: cannot access '202107*': no such file or dierctory
但如果我直接到該路徑輸入
ls 202107*
是會正常顯示出開頭有202107的檔案
剛剛亂try(印象中是將ls改用find去找檔案)
有成功讀到檔案
但tar的時候就有問題了 錯誤訊息變成
tar: ./20210701: cannot stat:no such file or directory
tar: -: cannot stat:no such file or directory
tar: A.xls: cannot stat:no such file or directory
看起來是因為有空格的關係 變成三個檔案
這部分file變數該怎麼寫才能篩選月份又能忽略空格呢
另外還有遇到一個問題
如果要刪除目錄 使用rm -rf
rm -rf /NAS/Ray/123
如果Ray目錄下如果沒有123 會把目錄Ray刪掉
這部分怎麼解決呢
有查到使用-r會遞迴刪除 但刪目錄又必須加上-r
這部分是否只能先cd過去 再rm -rf 123呢
以上問題在麻煩大家了 糾結好久好痛苦QQ 拜託大家了
作者:
observer0117
(ob)
2021-08-12 08:22:00
空格,加雙引號 " 試試?目錄在後面加 / 試試?或者先 test 目錄是否存在
作者:
chang0206
(Eric Chang)
2021-08-12 10:28:00
rm 那段有問題吧 不會刪到你說的 Ray目錄才對打包的話 用find 加上 exec 試試看
https://pastebin.com/bdzf2Pcu
作者:
Gold740716
(項為之強)
2021-08-12 14:48:00
rm 無法再現你是不是執行 ls $last_month* 的資料夾錯了?
作者:
sppmg
(sppmg)
2021-08-12 21:23:00
https://www.cyberciti.biz/faq/linux-unix-find-tar-files
-into-tarball-command/基本概念就是find輸出列表、tar -T 用檔案形式取得檔案列表
作者: gusion
2021-08-13 01:02:00
https://onlinegdb.com/2x-xwiGRT
寫了個sample code給你參考有用到bash的process substitution我看之前的文章是用bash,為了方便就直接這樣寫
作者:
raynoz
(Rayoz)
2021-08-13 07:39:00
大家不好意思 關於檔案刪除的問題 我描述錯誤了...我的寫法是rm -rf /NAS/Ray/$file 用意是想要包起來後把舊的檔案刪掉 但如果$file 篩選到的是資料夾 則正常work但如果$file 篩選出來的是檔案(xls檔) 似乎就會變無效反而把/NAS/Ray的Ray資料夾刪掉了這部分已經有解出來了 感謝大大們提供的方向 後來是用find才有成功!! 真的超感謝大家!!!
繼續閱讀
Fw: [問題] 關於 dev lib 手動安裝的問題
gowrite
Re: [分享] 網樂通 kernel 2.6.32.59 upgrade
Alica
Re: [問題] makefile for loop 問題
rickieyang
Re: [問題] shellscript tar問題
raynoz
[問題] 直立外接螢幕待機後無法重開
DJYeh
[問題] makefile for loop 問題
Wudc
[問題] 想實現在外面連回家中的Linux主機
ericerix
Re: [問題] shellscript tar問題
filiaslayers
[問題] shellscript tar問題
raynoz
fcitx在chrome倒退會吃字
orz811017
Links
booklink
Contact Us: admin [ a t ] ucptt.com