[問題] 如何使用 mv 指令處理多個檔案

看板Linux作者 (LeWeir)時間8年前 (2017/11/18 17:03), 8年前編輯推噓6(6012)
留言18則, 8人參與, 8年前最新討論串1/1
OS: WIN_10_x64 SHELL : Cmder 最近想學習使用 CLI 來取代 GUI 但是發現 mv 這個指令並沒有辦法使用 Regex 只能夠使用 wildcard match. 不過呢 wildcard 好像只能夠使用於 '不含有空白字元的檔案' mv -v foo_bar*.tar D:\ 可以成功執行 但倘若 foo_bar 之間的定界符號是'空格'的話 mv -v "foo bar*.tar" D:\ 就會回傳 mv: cannot stat 'foo bar*.tar': No such file or directory 我還上網查詢了一些資料 嘗試了以下等效的指令 但仍然都是失敗告終 mv -v "{foo bar}*.tar" D:\ mv -v "${foo bar}*.tar" D:\ mv -v -t D:\D\ `ls | grep -i -- "foo bar.*tar" 我知道解析 ls 不是一個好方法,但我還是想試試看能不能成功... 網路上查到的方法還有使用 find -exec 跟用 sh 的 for 疊代檔案名稱進去給 mv 但仍然想以比較直觀的方式來達成同樣的事情 想請問版上的高手能否解決這個問題 或者 ~ 有更簡單的方法或指令可以使用 !? 先在此謝謝各位回答的人 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.10.68.237 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1510995791.A.DAA.html ※ 編輯: leweir (39.10.68.237), 11/18/2017 17:07:21

11/18 17:11, 8年前 , 1F
空格要用 \
11/18 17:11, 1F

11/18 17:20, 8年前 , 2F
Wiki:跳脫字元
11/18 17:20, 2F

11/18 17:27, 8年前 , 3F
感謝回答 我知道跳脫字元 但是是放在 雙引號 裡面嗎?
11/18 17:27, 3F

11/18 17:28, 8年前 , 4F
一樣是回傳錯誤 mv -v "foo\sbar*.tar" D:\D 一樣是錯誤
11/18 17:28, 4F

11/18 17:36, 8年前 , 5F
*在雙引號內就失去wildcard的作用了
11/18 17:36, 5F

11/18 17:37, 8年前 , 6F
你可以試 "foo bar"*.tar 或是foo\ bar*.tar
11/18 17:37, 6F

11/18 17:53, 8年前 , 7F
回 ckclark 大大 一樣是報錯 是說 mv 這個指令沒有完備性
11/18 17:53, 7F

11/18 17:54, 8年前 , 8F
\ ,\s 這兩者都無法在雙括號內辨識成空格
11/18 17:54, 8F

11/18 19:00, 8年前 , 9F
在 windows 裡反斜線不是目錄嗎?不知道 cmder 怎麼作
11/18 19:00, 9F

11/18 20:04, 8年前 , 10F
至少第一種可以 https://i.imgur.com/Lengp3O.png
11/18 20:04, 10F

11/18 20:45, 8年前 , 11F
Windows Subsystem for Linux?
11/18 20:45, 11F

11/18 21:17, 8年前 , 12F
回 ckclark 大大, 抱歉! 我因為副檔名打錯 導致你說的方法
11/18 21:17, 12F

11/18 21:17, 8年前 , 13F
都回報錯誤 經過測試是可以的 ! 感謝您 !
11/18 21:17, 13F

11/18 21:28, 8年前 , 14F
回 bitlife 我是使用 WIN_10 然後終端用 cmder !
11/18 21:28, 14F

11/18 21:28, 8年前 , 15F
正確指令: "foo bar"*.tar
11/18 21:28, 15F

11/19 17:16, 8年前 , 16F
windows 推廌cygwin
11/19 17:16, 16F

11/19 23:05, 8年前 , 17F
cmder可以包cygwin terminal, https://tinyurl.com/zzvs6sk
11/19 23:05, 17F

11/20 02:53, 8年前 , 18F
cygwin下打 mv -v foo_bar*.tar /cygdrive/D/
11/20 02:53, 18F
文章代碼(AID): #1Q3_TFsg (Linux)
文章代碼(AID): #1Q3_TFsg (Linux)