我正在尝试通过NSTask获取以下find命令:
find /Users/user/projects ! -path '*.git*' -ctime -1
但是我无法让忽略路径部分工作。在终端,它工作正常。我得到了最近24小时的修改过的文件,不包括.git目录。 使用NSTask时,.git目录不会被忽略,导致太多积极的...... 我使用以下args:
NSArray *args = @[@"/Users/user/projects", @"!", @"-path", @"'*.git*'", @"-ctime", @"-1"];
有人知道我做错了吗?
答案 0 :(得分:2)
您可能还会发现它更容易。
NSString *argString = @"/Users/user/projects ! -path '*.git*' -ctime -1";
[nsTaskName setArguments: [argString componentsSeparatedByString: @" "]];
当您在终端中调试参数时,您只需复制并过去并在其前添加“查找”。
答案 1 :(得分:1)
我认为你必须替换参数
@"'*.git*'"
通过
@"*.git*"
否则find将仅忽略名为'*.git*'
的文件(逐字)。请注意,在终端中执行命令时,shell会删除单引号。