首页
学习
活动
专区
圈层
工具
发布

"chmod“
EN

Unix & Linux用户
提问于 2020-10-07 06:34:14
回答 2查看 1.5K关注 0票数 4

我正在学习如何更改文件的权限。在我的macOS系统中,我希望使用chmod --reference=reference-file file命令将权限从一个文件复制到另一个文件,但是它一直在返回

代码语言:javascript
复制
chmod: illegal option -- -

任何帮助都将不胜感激。

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2020-10-07 06:53:20

chmod on macOS不是GNU chmod (通常在Linux系统上找到),因此不支持特殊的非标准GNU“长选项”。

在macOS上,您仍然可以通过Homebrew管理器访问GNU chmod。一旦您安装了gchmod包,该实用程序就可以使用

代码语言:javascript
复制
brew install coreutils
票数 4
EN

Unix & Linux用户

发布于 2021-04-10 23:20:29

如果您的chmod版本不支持--reference,并且不希望安装其他软件,则可以使用stat获得引用文件的权限,并使用该权限。不幸的是,stat本身在不同的操作系统/版本之间是无可救药的不一致。在macOS (和NetBSD,可能还有其他BSD)上,您可以使用:

代码语言:javascript
复制
chmod "$(stat -f "%Mp%Lp" referencefile)" file

如果您有GNU版本的stat (而且由于某种原因没有GNU的chmod),那么应该是:

代码语言:javascript
复制
chmod "$(stat -c "%a" referencefile)" file

在其他OSes上..。检查man 1 stat,看看当地方言是什么。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/613292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档