如何在 OS X 上使用 CLI 设置文件或目录的图标?
使用 Finder 中的“获取信息”对话框可以直接在文件或目录上设置图标。
- 从例如预览复制图像
- 在文件或目录上打开“获取信息”
- 按TAB选择图标
- 粘贴Cmd-V
但是如何使用命令行执行此操作?
To set an icon on a file or directory is straight forward using the "Get Info" dialog in Finder.
- copy image from e.g. Preview
- open "Get Info" on file or directory
- press TAB to select the icon
- paste Cmd-V
But how do you do this using the command line?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是一个 bash 脚本“setIcon.sh”
Here is a bash script "setIcon.sh" for it
假设我们已经有了 icns 文件。创建指向 icns-file 的临时资源文件:
将资源文件作为扩展属性“com.apple.ResourceFork”的值附加到文件:
显示文件的图标:
将资源文件作为扩展属性“com.apple”的值附加.ResourceFork”到当前文件夹中的魔法图标文件:
显示当前文件夹的图标:
隐藏当前文件夹中的魔法图标文件(按 ⇧⌘. 在 Finder 中显示/隐藏隐藏文件):
其他详细信息
图标数据存储为扩展属性“com.apple.ResourceFork”的值(终端命令“xattr -p com.apple.ResourceFork FileName.ext”打印该值)。对于文件夹,文件夹内有一个神奇的(空且隐藏的)文件
Icon$'\r'
。要将扩展属性“com.apple.ResourceFork”中的图标数据提取到纯文本资源文件中(从中我们知道正确的icns类型标识符“-16455”):在macOS 10.13 High Sierra下命令
\r' > Icon.rsrc$ sips -i ImageFile。 icns/png/jpg
生成错误--addIcon 不再受支持
。开关-i
表示“--addIcon”作为扩展属性“com.apple.ResourceFork”使用此图像文件的内容添加到此文件本身。在macOS 10.13 High Sierra下命令
\r'$ sips -i ImageFile。 icns/png/jpg
生成错误--addIcon 不再受支持
。开关-i
表示“--addIcon”作为扩展属性“com.apple.ResourceFork”使用此图像文件的内容添加到此文件本身。显示当前文件夹的图标:
隐藏当前文件夹中的魔法图标文件(按 ⇧⌘. 在 Finder 中显示/隐藏隐藏文件):
其他详细信息
图标数据存储为扩展属性“com.apple.ResourceFork”的值(终端命令“xattr -p com.apple.ResourceFork FileName.ext”打印该值)。对于文件夹,文件夹内有一个神奇的(空且隐藏的)文件
Icon$'\r'
。要将扩展属性“com.apple.ResourceFork”中的图标数据提取到纯文本资源文件中(从中我们知道正确的icns类型标识符“-16455”):在macOS 10.13 High Sierra下命令
\r'$ sips -i ImageFile。 icns/png/jpg
生成错误--addIcon 不再受支持
。开关-i
表示“--addIcon”作为扩展属性“com.apple.ResourceFork”使用此图像文件的内容添加到此文件本身。其他详细信息
图标数据存储为扩展属性“com.apple.ResourceFork”的值(终端命令“xattr -p com.apple.ResourceFork FileName.ext”打印该值)。对于文件夹,文件夹内有一个神奇的(空且隐藏的)文件
Icon$'\r'
。要将扩展属性“com.apple.ResourceFork”中的图标数据提取到纯文本资源文件中(从中我们知道正确的icns类型标识符“-16455”):在macOS 10.13 High Sierra下命令
\r'$ sips -i ImageFile。 icns/png/jpg
生成错误--addIcon 不再受支持
。开关-i
表示“--addIcon”作为扩展属性“com.apple.ResourceFork”使用此图像文件的内容添加到此文件本身。显示当前文件夹的图标:
隐藏当前文件夹中的魔法图标文件(按 ⇧⌘. 在 Finder 中显示/隐藏隐藏文件):
其他详细信息
图标数据存储为扩展属性“com.apple.ResourceFork”的值(终端命令“xattr -p com.apple.ResourceFork FileName.ext”打印该值)。对于文件夹,文件夹内有一个神奇的(空且隐藏的)文件
Icon$'\r'
。要将扩展属性“com.apple.ResourceFork”中的图标数据提取到纯文本资源文件中(从中我们知道正确的icns类型标识符“-16455”):在macOS 10.13 High Sierra下命令
$ sips -i ImageFile。 icns/png/jpg
生成错误--addIcon 不再受支持
。开关-i
表示“--addIcon”作为扩展属性“com.apple.ResourceFork”使用此图像文件的内容添加到此文件本身。Assuming that we have icns-file already. Create temp resource file which points to icns-file:
Append the resource file as value of extended attribute "com.apple.ResourceFork" to a file:
Show the icon of the file:
Append resource file as value of extended attribute "com.apple.ResourceFork" to a magic icon file inside current folder:
Show the icon of current folder:
Hide the magic icon file inside current folder (press ⇧⌘. to show/hide hidden files in Finder):
Additional details
Icon data is stored as value of extended attribute "com.apple.ResourceFork" (Terminal command "xattr -p com.apple.ResourceFork FileName.ext" prints the value). For a folder there is magic (which is empty and hidden) file
Icon$'\r'
inside the folder. To extract icon data from extended attribute "com.apple.ResourceFork" into plain text resource file (from which we know correct icns-type identifier "-16455"):Under macOS 10.13 High Sierra command
\r' > Icon.rsrc$ sips -i ImageFile.icns/png/jpg
generates error--addIcon is no longer supported
. Switch-i
means "--addIcon" as extended attribute "com.apple.ResourceFork" onto this file itself using the content of this image file.Under macOS 10.13 High Sierra command
\r'$ sips -i ImageFile.icns/png/jpg
generates error--addIcon is no longer supported
. Switch-i
means "--addIcon" as extended attribute "com.apple.ResourceFork" onto this file itself using the content of this image file.Show the icon of current folder:
Hide the magic icon file inside current folder (press ⇧⌘. to show/hide hidden files in Finder):
Additional details
Icon data is stored as value of extended attribute "com.apple.ResourceFork" (Terminal command "xattr -p com.apple.ResourceFork FileName.ext" prints the value). For a folder there is magic (which is empty and hidden) file
Icon$'\r'
inside the folder. To extract icon data from extended attribute "com.apple.ResourceFork" into plain text resource file (from which we know correct icns-type identifier "-16455"):Under macOS 10.13 High Sierra command
\r'$ sips -i ImageFile.icns/png/jpg
generates error--addIcon is no longer supported
. Switch-i
means "--addIcon" as extended attribute "com.apple.ResourceFork" onto this file itself using the content of this image file.Additional details
Icon data is stored as value of extended attribute "com.apple.ResourceFork" (Terminal command "xattr -p com.apple.ResourceFork FileName.ext" prints the value). For a folder there is magic (which is empty and hidden) file
Icon$'\r'
inside the folder. To extract icon data from extended attribute "com.apple.ResourceFork" into plain text resource file (from which we know correct icns-type identifier "-16455"):Under macOS 10.13 High Sierra command
\r'$ sips -i ImageFile.icns/png/jpg
generates error--addIcon is no longer supported
. Switch-i
means "--addIcon" as extended attribute "com.apple.ResourceFork" onto this file itself using the content of this image file.Show the icon of current folder:
Hide the magic icon file inside current folder (press ⇧⌘. to show/hide hidden files in Finder):
Additional details
Icon data is stored as value of extended attribute "com.apple.ResourceFork" (Terminal command "xattr -p com.apple.ResourceFork FileName.ext" prints the value). For a folder there is magic (which is empty and hidden) file
Icon$'\r'
inside the folder. To extract icon data from extended attribute "com.apple.ResourceFork" into plain text resource file (from which we know correct icns-type identifier "-16455"):Under macOS 10.13 High Sierra command
$ sips -i ImageFile.icns/png/jpg
generates error--addIcon is no longer supported
. Switch-i
means "--addIcon" as extended attribute "com.apple.ResourceFork" onto this file itself using the content of this image file.