Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个 .cxx 文件和 cmake 文件来帮助编译。但是,当我在 linux 终端上运行代码时,会输出正确的文件,以及一些 (null) 文件(即 (null).5252 )。我试图system("sudo rm -- \(null\)*");在 .cxx 代码中使用来删除(空)文件,但它似乎不起作用。它给了我错误:
system("sudo rm -- \(null\)*");
sh: 1: Syntax error: "(" unexpected
谢谢
在您传递给的字符串中system(),由于反斜杠,括号被逐字解释。这不是你真正想要的。您想在字符串中传递反斜杠,因此您需要自己转义反斜杠。
system()
system("sudo rm -- \\(null\\)*");
或者您可以引用文件名而不是转义括号。
system("sudo rm -- \"(null)*\"");