Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 简单Mac Bash脚本(查找/替换)_Macos_Bash_Safari - Fatal编程技术网

Macos 简单Mac Bash脚本(查找/替换)

Macos 简单Mac Bash脚本(查找/替换),macos,bash,safari,Macos,Bash,Safari,首先,我们非常感谢在这方面给予的任何支持和帮助 我正在尝试编写一个简单的Bash脚本(这是一个全新的脚本)来替换给定目录中的文件 基本上,我需要编写一个脚本来替换safari首选项文件,以下是我所拥有的..以及不适用于此的内容: #!/bin/bash find /Files/ -iname "com.apple.Safari.plist" - print0 | xargs -I{} -0 -1 cp file /Users/{}/Library/Preferences 它会出现以下错误: f

首先,我们非常感谢在这方面给予的任何支持和帮助

我正在尝试编写一个简单的Bash脚本(这是一个全新的脚本)来替换给定目录中的文件

基本上,我需要编写一个脚本来替换safari首选项文件,以下是我所拥有的..以及不适用于此的内容:

#!/bin/bash
find /Files/ -iname "com.apple.Safari.plist" - print0 | xargs -I{} -0 -1 cp file /Users/{}/Library/Preferences
它会出现以下错误:

find: -: unknown option
xargs: illegal option -- 1
非常感谢您的任何想法和想法


谢谢,

-print0
之间没有空格。由于
-1
不是一个选项,请删除它并查看

find /Files/ -iname "com.apple.Safari.plist" -print0 | xargs -I{} -0 cp file /Users/{}/Library/Preferences

-print0
之间没有空格。由于
-1
不是一个选项,请删除它并查看

find /Files/ -iname "com.apple.Safari.plist" -print0 | xargs -I{} -0 cp file /Users/{}/Library/Preferences

我不明白你到底想用这个做什么。据我所知,您会在/Files/中使用这个“com.apple.Safari.plist”,对吗

然后你想把这个文件放到某个地方,我想,它会覆盖Safari当前的plist文件。假设您接受ghostdog74的正确建议并删除
-print0
之间的空格,从而将其转换为
-print0
,然后从xargs中删除
-1
,因为它不存在,则会发生以下情况:

find
将在/Files/中找到您的文件,
xargs
将运行以下操作:
cp文件/Users/com.apple.Safari.plist/Library/Preferences
;然后它就会死掉,因为它找不到名为“file”的文件或名为“/Users/com.apple.Safari.plist/”的目录

这很可能不是你想要的

如果您只是想将文件复制到某个地方,为什么不直接执行
cp/Files/com.apple.Safari.plist~/Library/Preferences/


在这种情况下,您真的需要
find
xargs
?你能澄清一下吗?

我不明白你到底想用这个实现什么。据我所知,您会在/Files/中使用这个“com.apple.Safari.plist”,对吗

然后你想把这个文件放到某个地方,我想,它会覆盖Safari当前的plist文件。假设您接受ghostdog74的正确建议并删除
-print0
之间的空格,从而将其转换为
-print0
,然后从xargs中删除
-1
,因为它不存在,则会发生以下情况:

find
将在/Files/中找到您的文件,
xargs
将运行以下操作:
cp文件/Users/com.apple.Safari.plist/Library/Preferences
;然后它就会死掉,因为它找不到名为“file”的文件或名为“/Users/com.apple.Safari.plist/”的目录

这很可能不是你想要的

如果您只是想将文件复制到某个地方,为什么不直接执行
cp/Files/com.apple.Safari.plist~/Library/Preferences/


在这种情况下,您真的需要
find
xargs
?你能澄清一下吗?

没问题,很高兴能帮上忙。不过,你可以接受答案,这样可以防止其他人在不需要答案时试图发布更多答案。谢谢!:)没问题,很高兴能帮上忙。不过,你可以接受答案,这样可以防止其他人在不需要答案时试图发布更多答案。谢谢!:)