回文章列表
作者mystea.bbs@ptt.cc (mystea) 看板: linux
標題[問題] 如何把所有 有whitespace的檔名 改成沒有的?
時間批踢踢實業 (2008/09/30 Tue 03:25:57)
大家好,
我的目錄底下有很多如下的檔名:

\ \ 1
\ \ 2
\ 10
\ 20
等等.

我想把他改成
1
2
10
20

請問有沒有什麼簡單的方法?

我目前的作法是

for FILE in $(find . -type f); do mv "$FILE $(echo $FILE | tr -d '\ ')"; done
但出現的結果是:
mv ./ ./
mv 1 1
而不是我想要的
mv ./\ \ 1 ./1

我猜測是因為$(find . -type f)裡裝的是
/ 1 ./ 10 ./ 2 ./ 20
(這是echo $(find . -type f)的結果)
也就是說檔名的空白變成分隔字元了?

我應該怎麼辦?

--
※ 發信站: 批踢踢實業坊(ptt.cc) 
◆ From: 128.97.69.135
文章選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻