如何在 Mac OS X 中正确使用“install”命令行命令?

如何在 Mac OS X 中正确使用“install”命令行命令?

我有一个 makefile,它会在目标构建目录中安装很多文件。其中一些是可执行文件,一些不是。

我之前在 Linux 上测试过带有非可执行文件install标志的命令,但现在它坏了。我发现OSX/BSD 上没有该标志,因此我已将其删除。问题是,我需要确保根据需要创建安装文件路径中的组件目录。我认为该标志会有所帮助,并尝试了以下方法:-D -m 644-D-d

install .DS_Store ./tmp/build/some_dir/

...但它抱怨说some_dir“没有这样的文件或目录”,即它不存在(这是真的)。​​然后我尝试了与上述相同的操作,但使用了标志-d,并得到了另一个错误:

安装:.DS_Store 存在但不是目录

我只想要一种或多或少稳定且通用的方法来将文件复制到目标。也许我应该求助于cp?不过,我知道两者之间存在细微但重要的区别。

答案1

install -d将其所有参数解释为(可能)需要创建的目录。因此,我认为您需要将其作为两个命令来执行:

install -d ./tmp/build/some_dir/
install .DS_Store ./tmp/build/some_dir/

相关内容