Objective-C-如何将文件路径转换为符合shell的文件路径

Objective-C-如何将文件路径转换为符合shell的文件路径,objective-c,shell,nsstring,Objective C,Shell,Nsstring,我想执行一个shell命令(我想触摸一个文件)。我使用system(“shell命令”)执行命令 例如,我想触摸路径/Users/username/New Folder/处的文件。现在,我需要将NSString转换为符合shell命令的格式,如/Users/username/New\Folder 有没有这样的转换方法 注意:它不仅仅是用\替换空白。如果路径中有一个特殊字符,如/Users/username/Folder(foo)/“shell路径”看起来像/Users/username/Fold

我想执行一个shell命令(我想触摸一个文件)。我使用
system(“shell命令”)
执行命令

例如,我想触摸路径
/Users/username/New Folder/
处的文件。现在,我需要将
NSString
转换为符合shell命令的格式,如
/Users/username/New\Folder


有没有这样的转换方法


注意:它不仅仅是用
\
替换空白。如果路径中有一个特殊字符,如
/Users/username/Folder(foo)/
“shell路径”看起来像
/Users/username/Folder\(foo\)/

无需转换路径,可以用单引号将其括起来。只需使用:

touch 'path'

可以用“”标记将包含空格的参数括起来


至少这在shell提示符下有效

不要使用
系统
。这是不安全和不可预测的。用引号括住字符串是不够的


改用新的。它们既简单又安全

单引号更好,双引号不能阻止shell扩展。
touch "/Users/username/New Folder/"