[分享] 如何存取檔名為亂碼的檔案
有時由一些 zip 檔中解壓會遇到檔名非 UTF-8 而出現亂碼檔名的現象。
麻煩的是因為檔名亂碼,檔案管理器可能根本無法存取此檔,點選直接顯示無此檔案,
更不要說改名、刪除等等操作。
難道我們只能讓這檔案放在那裡佔空間嗎?
這裡提供一個通用方法(剛爬文看到 zsh tab*2 後可以用光標選檔,不知能否處理)
《利用 inode number》
Linux 檔案系統是用 inode 做管理的,所以我們改對 inode 操作就行了。
列出檔案 inode :
$ ls -i
你也可以加上其他參數, 如 -l , -lS (S依大小排序),
方便在眾多亂碼檔名中確定檔案。
修改檔名:(我只知道 find 可以對 inode 操作)
$ find -maxdepth 1 -inum "0123455" -exec mv "{}" "new_name" \;
-maxdepth 1 限定搜索當前目錄
-inum 搜索 inode number
-exec 執行指令,{} 代換成找到檔名,記得以 \; 結束。
(如果你要直接刪除就改用 rm {} 或 -delete )
如果你像我昨天要改 40 個檔案(有更好辦法嗎? XD)
你可以弄一個 mv_by_inode.sh
################
#!/bin/bash
if [ -n "$1" ] && [ -n "$2" ] ; then
find -maxdepth 1 -inum "$1" -exec mv "{}" "$2" \;
else
echo Usage: `basename $0` inode_number new_name
echo
fi
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.188.87
※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1508429462.A.09D.html
推
10/20 11:21,
8年前
, 1F
10/20 11:21, 1F
推
10/20 11:53,
8年前
, 2F
10/20 11:53, 2F
推
10/20 15:19,
8年前
, 3F
10/20 15:19, 3F
→
10/20 15:32,
8年前
, 4F
10/20 15:32, 4F
推
10/20 21:08,
8年前
, 5F
10/20 21:08, 5F
→
10/20 22:21,
8年前
, 6F
10/20 22:21, 6F
→
10/21 00:17,
8年前
, 7F
10/21 00:17, 7F
推
10/21 10:58,
8年前
, 8F
10/21 10:58, 8F
推
10/22 23:07,
8年前
, 9F
10/22 23:07, 9F
※ 編輯: sppmg (36.231.243.133), 10/24/2017 22:10:22
推
10/28 20:17,
8年前
, 10F
10/28 20:17, 10F
Linux 近期熱門文章
21
56
PTT數位生活區 即時熱門文章