2013-02-25 252 views
0

我想編碼linux文件名(完整路徑),有沒有一些方法? examle: 輸入:(通過dir結構是這樣的:)linux文件名(完整路徑)編碼

/root/ 
/root/fileA.txt 
/root/dir/ 
/root/dir/fileB.txt 

編碼後: (只是這樣的,人類可讀的是沒有必要的)

%root% 
%root%fileA.txt 
%root%dir% 
%root%dir%fileB.txt 

,並利用這些新名稱作爲新的文件名,我可以把這些文件放到一個目錄中。 之後這樣:

/root1/%root% 
/root1/%root%fileA.txt 
/root1/%root%dir% 
/root1/%root%dir%fileB.txt 
+0

如果您的文件名稱中已包含%,該怎麼辦? (你有什麼嘗試?) – Mat 2013-02-25 06:18:10

+0

[你有什麼嘗試?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – 2013-02-25 06:18:31

+0

編碼在我的例子中,只是我的第一個計劃。它不起作用。我試過BASE64,但我不知道它是否可以作爲正確的Linux文件名。 – 2013-02-25 06:38:06

回答

0

這是一個詭計的方式。我使用mktemp函數來生成新的文件名。