如何启用linux支持双反斜杠“\\”作为路径分隔符

时间:2012-03-16 08:48:33

标签: linux path backslash

假设我们有一个文件/root/file.ini。

在Ubuntu的shell中,我们可以用这个命令显示内容, 少/root\\file.ini

但是,在debian的shell中,下面的命令将报告该文件不存在。

有没有人碰巧知道如何将linux支持“\\”作为路径分隔符?我需要解决它,因为我们有一个软件,试图使用“\\”访问文件。它在ubuntu中运行正常,但在debian中运行不正常。

由于

2 个答案:

答案 0 :(得分:2)

Linux不能支持\作为路径分隔符(尽管它可能能够对内核进行重大更改)。这是因为\是有效的文件名字符。实际上,唯一不允许作为文件名一部分的字符是/\0(空字符)。

如果这似乎在ubuntu下运行,那么我会在root\file.ini

中检查是否存在名为/的文件

我相信您可能会发现让您的程序平台独立更容易。

我发现这个forum post表明/是ANSI C中与平台无关的路径分隔符,任何文件操作都会自动将/转换为主机操作系统上使用的实际路径分隔符。< / p>

答案 1 :(得分:1)

你试过“\\\\”(4个反斜杠)第一个和第三个用于转义,第二个和最后一个用于统治它们吗?