我有一个ksh文件,我有以下代码行
find . \
\( \
-name \*.tar -o \
-name \*.gz -o \
-name log.\* -o \
-name out.\* \
\) \
我有兴趣知道这些反斜杠的目的。是逃避什么的吗?
改写成一行:
find . \( -name "*.tar" -o -name "*.gz" -o -name "log.*" -o -name "out.*" \)
顺便说一句。 last -o(必须跟随选项)和反斜杠在您的示例中是错误的
反斜杠有两个目的:
find
。在这里阅读更多相关信息:Which characters need to be escaped when using Bash?。这是关于Bash但是KSH是类似的。