2013-02-25 100 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函数来生成新的文件名。