婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 把文件名當(dāng)中含有特殊字符[.\]的文件刪除的方法

把文件名當(dāng)中含有特殊字符[.\]的文件刪除的方法

熱門標(biāo)簽:五華銷售外呼管理系統(tǒng)電話 百度地圖標(biāo)注地址有什么影響 軟通動(dòng)力地圖標(biāo)注專員 DOTA地圖標(biāo)注app 綿陽外呼線路 聯(lián)通400電話去哪里申請啊 徐州客服外呼系統(tǒng)排名 汕頭外呼crm系統(tǒng) 湖州手機(jī)外呼系統(tǒng)
如果這個(gè)「特殊字元」是 '/',請?zhí)竭@題的結(jié)尾;如果這個(gè)特殊的字元是 
一個(gè) ' 或者控制字元或者中文字,請繼續(xù)往下讀。 

典型的解法是: 

rm -i some*pattern*that*matches*only*the*file*you*want 

這樣子的話 rm 會(huì)在要?jiǎng)h除符合你給的條件的檔案前,要你確定,不 
過若你的 shell 會(huì)將每個(gè)字元的第八個(gè) bit 變成零,那以中文作檔 
名的檔案可能就刪除不掉了! 

與 

        rm -ri . 

這樣子的 rm 會(huì)刪除目前目錄下的所有檔案,而在刪除一個(gè)檔案之 
前會(huì)問你是否要?jiǎng)h除此檔。不過很不幸的,并非每一個(gè)版本的 rm 都 
能這么用。再者,就算能用的話,這么做的話會(huì)把目前所在目錄的所 
有子目錄都找進(jìn)去,可能要用 "chmod a-x" 避免使子目錄無法搜尋才 
能避免可怕的后果。要做 "rm -r" 或含有萬用字元的 "rm" 前請先深 
呼吸,搞清楚自己是在做什么! 

與 

        find . -type f ... -ok rm '{}' \; 

"..." 是一堆用以辨識檔案名稱的述詞,譬如在找出一有問的檔案的 
inode 為何后,用 

        find . -num 12345 -ok rm '{}' \; 

或 

        find . -inum 12345 -ok mv '{}' new-file-name \; 

刪除或改名。 選項(xiàng) "-ok" 是告訴 find 要執(zhí)行指令前先要求你確認(rèn) 
。若你能確定所下的指令沒有問題,或者怕所要處理檔案有奇怪的字 
元印出來會(huì)使螢?zāi)粊y七八糟,那用選項(xiàng) "-exec" 就不會(huì)先要求你的確 
認(rèn)。 

那當(dāng)檔案名稱里含有 '/' 時(shí)要怎么辦呢? 

這類檔案是很特別的情形,并且只會(huì)因?yàn)?nbsp;kernel 的 bug 而發(fā)生(通 
常是在寫 NFS 的時(shí)候,沒有把從遠(yuǎn)端機(jī)器來的檔案名稱中不合規(guī)定的 
字元過濾掉)。我們第一件要做的事情就是,試著去了馕裁湊飧?nbsp;
問題會(huì)如此奇怪。 

UNIX 的目錄其實(shí)就只是單純的檔名和 inode number  的成對組合。 
舉例來說,目錄包含了如下的資訊: 

        filename  inode 

        file1     12345 
        file2.c   12349 
        file3     12347 

理論上揮?nbsp;'/' 和 '\0' 兩個(gè)字元不能用在檔案名稱中, 
因?yàn)樗鼈冇幸韵碌奶厥庥猛荆?nbsp;

        '/'     :用來分隔目錄名稱及檔案名稱。 
        '\0'    :用來當(dāng)檔名的終結(jié)字元。 

非常、極端、很不幸的,某些廠商做出來的 NFS 在回應(yīng)遠(yuǎn)端機(jī)器的要 
求時(shí),會(huì)很白癡地造出含有斜線(/)的檔名。例如,當(dāng)某人在 Mac 
或其他非 Unix 機(jī)器透過 NFS 造一個(gè)以日期為名稱的檔案到你的 
Unix 中。那么,你的 Unix 目錄看起來可能就會(huì)像這個(gè)樣子: 

        filename  inode 

        91/02/07  12357 

我們前面所提過的 'find' 或 'rm' 都無法刪除這個(gè)檔案,因?yàn)檫@些或 
其他的 Unix 程式都會(huì)強(qiáng)制把 '/' 當(dāng)作前述的分隔字元解釋。 

其實(shí),任何一般的程式都會(huì)試著做 unlink("91/02/07"),而這對 
kernel 來說,它的意義是 "unlink 目錄 91 下的子目錄 02 中的檔 
案 07",但是,我們并沒有這樣的檔案,我們有的是一個(gè)名叫 
"91/02/07" 的檔案在目前的目錄中。這是個(gè)極細(xì)微但極重要的區(qū)別。 

這時(shí)該怎么辦呢?首先回到產(chǎn)生這種亂七八糟檔名的 Mac,試試 
看 NFS daemon 要不要讓你改成不含 '/' 的檔名。如果不行,那就得 
找你的系統(tǒng)管理者幫忙了。請他試試以下幾種方法之一: 

1. 用 "ls -i" 找出檔案的 inode number,umount 掉這個(gè) 
   file system 然后以 "clri" 將這個(gè) inode 清除,然后 
   祈求“fsck" 的成功。這個(gè)作法會(huì)刪除這亂七八糟檔名的 
   檔案。 

2. 若還想保存這個(gè)檔案的資料,試試以下的做法: 

   -在那亂七八糟檔名的檔案所在之目錄的親目錄底下建一 
    個(gè)子目錄,將舊的目錄下能搬動(dòng)的檔案都搬到新的目錄 
    里。 
   -以 "ls -id" 取得舊目錄的 inode number 
   -unmount 掉這個(gè) file system, 用 "clri" 清掉那個(gè) 
    目錄的 inode 
   -"fsck" 那個(gè) file system 
   -從新 mount 上那個(gè) file system 
   -將新的目錄改名為舊的目錄名 
   -從 lost+found 下找回那個(gè)檔案,改個(gè)好名字,放回原 
    來的目錄。
復(fù)制代碼 代碼如下:

我的測試過的,一般文件的建立方法
cmd下 創(chuàng)建的方法:md jb51..\
           刪除的方法:rd jb51..\

標(biāo)簽:新余 濟(jì)南 內(nèi)江 清遠(yuǎn) 邯鄲 克拉瑪依 廣東 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《把文件名當(dāng)中含有特殊字符[.\]的文件刪除的方法》,本文關(guān)鍵詞  把,文件名,當(dāng),中含有,特殊,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《把文件名當(dāng)中含有特殊字符[.\]的文件刪除的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于把文件名當(dāng)中含有特殊字符[.\]的文件刪除的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 大埔区| 潮州市| 台前县| 普兰县| 昆明市| 辉县市| 南部县| 广河县| 肥乡县| 县级市| 镇平县| 廊坊市| 芦山县| 盐源县| 永年县| 舟山市| 白山市| 五华县| 太白县| 普安县| 沅陵县| 三都| 沙田区| 乾安县| 丰宁| 景东| 溧水县| 辛集市| 林周县| 公主岭市| 陆河县| 原平市| 景德镇市| 宁武县| 普宁市| 阳春市| 汕头市| 将乐县| 阿巴嘎旗| 右玉县| 视频|