Mac Tips - 使用Mac的一些小技巧 (持续更新)

AI 摘要: 在使用Mac电脑过程中,遇到各种问题时,可以记录下来以便快速处理。本文介绍了解决zsh完成提示问题的排查方法。

在使用 Mac 电脑过程中遇到的各种问题,做下相关记录,方便再次遇到快速处理,文档也在持续完善中…

1. zsh 配置了上述 fpath 变量,也执行了 source 操作,但终端没有 zsh complete 的提示,要如何排查问题?

1.1. 基本检测 zsh 环境、fpath 路径等

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 确认使用的是 zsh Shell。可以在终端中运行以下命令,确保输出的结果为`/bin/zsh`
echo $SHELL

# 检查$fpath 变量是否包含正确的路径。在终端中运行以下命令:
echo $fpath

# 确认添加到$ fpath 变量中的路径是否已经包含在内。可以通过编辑 `~/.zshrc`修改 `fpath`补充 completions 内容
fpath=(/path/to/completions $fpath)

# 确保您尝试自动补全的命令和参数是正确的。有时候,当您使用 zsh 补全命令时,可能需要在相关命令后面添加参数。例如,如果您想在 ls 命令中使用自动补全,请尝试输入以下内容来查看补全提示:
ls [TAB]

1.2. autoload 命令会自动加载指定的函数或完成功能

1
2
3
# 确认您已经安装了 zsh 的补全插件。一些 zsh 插件是必需的,以便提供某些补全功能。您可以查看 ZSH 的官方文档,以获取更多有关安装和配置 ZSH 补全插件的信息。
# 如果您尝试了上述所有步骤,仍然无法解决问题,请尝试在 ZSH 中运行以下命令:
autoload -U compinit && compinit

在 zsh 中,自动补全是通过自动加载完成文件(也就是.zsh-completions)实现的。autoload 和 compinit 都是 zsh 命令,用于自动加载完成功能。

autoload 命令会自动加载指定的函数或完成功能。-U 选项会将函数或完成功能声明为顶级命名空间的成员。这意味着在.zshrc 文件中不需要使用命名空间前缀即可访问命令。compinit 是一个内置的函数,用于从$ fpath 目录中加载自动补全。它会搜索所有目录中的以“_”开头的.zsh-completions 脚本,并将它们加载到内存中以供后续使用。

因此,autoload 和 compinit 组成的命令初始化了自动补全功能,并开始搜索.zsh-completions 文件,以使它们能够在使用命令时自动完成。

2. MAC 删除微软 Office 的 自动更新 AutoUpdate

Office 烦人的自动更新(AutoUpdate):

Finder -> 找到 /Library/Application Support/Microsoft/ 找到 Microsoft AutoUpdate.app -> 删除

3. Mac M1\Intel 下如何删除 ABC 输入法

之前看了一些教程,是通过csrutil进行操作,在 M1 下尝试了下失败了。

参考: https://ssnhd.com/2022/01/01/mac-inputdel/

方式1

  1. cp ~/Library/Preferences/com.apple.HIToolbox.plist ~/Library/Preferences/com.apple.HIToolbox.old.plist
  2. sudo open ~/Library/Preferences/com.apple.HIToolbox.old.plist,用XCode打开.plist文件,删除ABC项后保存
  3. 重启进入恢复模式:
    • M1:长按关机键10s
    • Intel: 长按CTRL+R7秒以上
  4. 终端模式下,用编辑保存的覆盖掉默认的HIToolbox文件:
    • 关闭保护: csrutil disable
    • 用编辑后的替换掉编辑前的文件: mv ~/Library/Preferences/com.apple.HIToolbox.old.plist ~/Library/Preferences/com.apple.HIToolbox.plist
    • 开启保护: csrutil enable

注意:方式1适合在关闭保护模式重启电脑后,用XCODE编辑后会被自动恢复的问题

方式2:

  1. 打开系统偏好设置 → 键盘 → 输入法 → 添加 US 美国(Big Sur 及之前版本是 🇺🇸 美国),再删除 ABC。
  2. 访达前往文件夹(快捷键:Command-Shift-G~/Library/Preferences/,找到 com.apple.HIToolbox.plist 并用 Xcode 软件打开。
  3. 删除所有包含 U.S. 后缀的文件(例如 KeyboardLayout Name String U.S.)并保存
  4. 重启 Mac,此时只有一个输入法,切换中英文只需要按 Shift

之前文章中说到的弊端,我尝试了下修改网络 DNS,没有遇到无法输入数字问题! (MacOS M1 Pro 13.2.1)

4. Mac M1 关闭 csrutil

参考: https://support.apple.com/en-us/HT201314

简单点说,就是 M1 开机持续按着“电源按键"就可以进入 Recovery 模式操作,老版 Mac 是通过开机cmd+r来实现的(M1 无效)

5. 将 Mac 下的 Bash 从 version3 升级到 version5

因为版本许可问题,Mac 上面的 Bash 版本仍然采用的是版本 version3,因为版本 4 许可为GPL v3事实,所以苹果没有将系统默认的 Bash 版本做升级到 version4

5.1. 旧版本

1
2
3
4
5
6
7
8
// 旧版本
$ bash --version
GNU bash, version 3.2.57(1)-release (arm64-apple-darwin22)
Copyright (C) 2007 Free Software Foundation, Inc.

// 查看当前使用bash 命令所在位置
$ which bash
/bin/bash

5.2. 更新到最新的 Bash version5

  1. brew 查询 bash 版本信息: brew info bash

  2. 全新安装: brew install bash,如果之前有安装过,可以直接更新 brew upgrade bash

  3. 安装完后,做好 brew 软链: brew unlink bash && brew link bash,可以通过 man brew 查看含义

    1
    2
    
    link, ln [options] installed_formula [...]
           Symlink all of formula´s installed files into Homebrew´s prefix. This is done automatically when you install formulae but can be useful for DIY installations.
    
  4. 将新的 bash 加入到 /etc/shells中: echo $(brew --prefix)/bin/bash | sudo tee -a /private/etc/shells,也可以通过sudo vim /etc/shells 操作

  5. 替换到 mac 默认的 bash shell: sudo chsh -s /opt/homebrew/bin/bash

5.3. 查看新版本

1
2
3
4
5
6
7
$ which bash
/opt/homebrew/bin/bash

$ bash --version
GNU bash, version 5.2.15(1)-release (aarch64-apple-darwin22.1.0)
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

5.4. 存在瑕疵

man bash会提示 mandoc和 bash 不兼容,因为默认的 bash 是 bash 是 v3 版本,即便我们在启动脚本将MANPATH扩展后(eval "$(/opt/homebrew/bin/brew shellenv)") ,依旧不行:

1
2
3
4
5
6
7
$ brew shellenv
export HOMEBREW_PREFIX="/opt/homebrew";
export HOMEBREW_CELLAR="/opt/homebrew/Cellar";
export HOMEBREW_REPOSITORY="/opt/homebrew";
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin${PATH+:$PATH}";
export MANPATH="/opt/homebrew/share/man${MANPATH+:$MANPATH}:";
export INFOPATH="/opt/homebrew/share/info:${INFOPATH:-}";

仅在脚本里面使用安装的 Bash 想在新脚本应用 Bash Version 以上的版本功能(比如 Map 关联数组),目前我的处理方式是脚本申明下:

1
2
#!/opt/homebrew/bin/bash
...

6. Mac M1 通过 brew 安装 node 提示 Prefix 错误

Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)

参考: https://docs.brew.sh/Installation

6.1. Mac OS 要求(一般都满足)

  1. A 64-bit Intel CPU or Apple Silicon CPU
  2. Catalina (10.15) (or higher)
  3. Command Line Tools (CLT) for Xcode : 通过xcode-select --install 安装
  4. The Bourne-again shell for installation (i.e. bash)

6.2. 安装方式 1 - 通过 Git Clone

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// 1. clone homebrew
$ cd /opt
$ sudo git clone https://github.com/Homebrew/brew homebrew

// 2. 更改目录属性
$ sudo chown -R $(whoami):staff /opt/homebrew

// 3. 执行环境变量(man brew)
// Print export statements. When run in a shell, this installation of Homebrew will be added to your PATH, MANPATH, and INFOPATH.
//
// The variables HOMEBREW_PREFIX, HOMEBREW_CELLAR and HOMEBREW_REPOSITORY are also exported to avoid
// querying them multiple times. To help guarantee idempotence, this command produces no output when
// Homebrew´s bin and sbin directories are first and second respectively in your PATH. Consider adding
// evaluation of this command´s output to your dotfiles (e.g. ~/.profile, ~/.bash_profile, or
// ~/.zprofile) with: eval "$(brew shellenv)"
$ eval "$(homebrew/bin/brew shellenv)"

// 4. 静默更新
$ brew update --force --quiet
==> Homebrew has enabled anonymous aggregate formula and cask analytics.
Read the analytics documentation (and how to opt-out) here:
  https://docs.brew.sh/Analytics
No analytics have been recorded yet (nor will be during this `brew` run).

==> Tapping homebrew/core
Cloning into '/opt/homebrew/Library/Taps/homebrew/homebrew-core'...
remote: Enumerating objects: 1265097, done.
remote: Counting objects: 100% (207/207), done.
remote: Compressing objects: 100% (97/97), done.
remote: Total 1265097 (delta 120), reused 192 (delta 110), pack-reused 1264890
Receiving objects: 100% (1265097/1265097), 517.64 MiB | 3.02 MiB/s, done.
Resolving deltas: 100% (872476/872476), done.
Tapped 3 commands and 6273 formulae (6,616 files, 566.4MB).

// 5. 确保移除other的写权限
$ chmod -R go-w "$(brew --prefix)/share/zsh"

// 6. 版本确认
$ brew --version
Homebrew 3.6.0
Homebrew/homebrew-core (git revision 57f5c02ec6a; last commit 2022-09-10)

// 7. brew config
/opt/homebrew on  stable (93ea8cb2c) 💰 17:17:54
$ brew config
HOMEBREW_VERSION: 3.6.0
ORIGIN: https://github.com/Homebrew/brew
HEAD: 93ea8cb2c40e1ef25f1489b0267526bd47bc8030
Last commit: 3 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 57f5c02ec6af877482ecd8753066d6a277cd3213
Core tap last commit: 72 minutes ago
Core tap branch: master
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_REPOSITORY: /opt/homebrew
HOMEBREW_CELLAR: /opt/homebrew/Cellar
HOMEBREW_CASK_OPTS: []
HOMEBREW_MAKE_JOBS: 10
Homebrew Ruby: 2.6.8 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: 10-core 64-bit westmere
Clang: 13.1.6 build 1316
Git: 2.32.1 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Curl: 7.79.1 => /usr/bin/curl
macOS: 12.5.1-x86_64
CLT: 13.4.0.0.1.1651278267
Xcode: 13.4.1
Rosetta 2: true

// 8. 将brew shell env 加入到启动脚本比如 ~/.zshrc、~/.barshrc等
eval "$(/opt/homebrew/bin/brew shellenv)"

6.3. 安装方式 1 - 通过 Git

1
2
3
export HOMEBREW_BREW_GIT_REMOTE="..."  # put your Git mirror of Homebrew/brew here
export HOMEBREW_CORE_GIT_REMOTE="..."  # put your Git mirror of Homebrew/homebrew-core here
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

7. Mac 快捷键(Emoji、Finder)

  • Finder 内拷贝完整路径: option+command+c
  • 快速弹出 emoji 表情: ctrl+command+space

8. 拷贝浏览器 URL 不做转移

拷贝浏览器 URL 不做url_encode编码: 在 URL 最前面添加逗号,,当拷贝完后再删除,

9. Mac 服务管理 - launchd/lannchctl

参考 https://www.xiebruce.top/983.html

9.1. 启动服务列表

1
2
3
4
5
6
7
8
# 列表
$ launchctl list
PID Status Label
- 0 com.apple.SafariHistoryServiceAgent
1621 0 com.apple.progressd
- 0 com.google.keystone.user.xpcservice
- 0 com.apple.cloudphotod
...

10. 京造键盘(Keychron K2)操作快捷键,可以工作 20~80 小时(灯光耗电影响,10M 蓝牙)

https://item.jd.com/100012895086.html

  1. 多设备匹配,在 BT 模式下(共联 3 台设备) - ****
    1. 长按Fn+13s,从设备 1 连接键盘,待按键 1 闪烁,连接好设备 1 - (Mac-Home)
    2. 长按Fn+23s,从设备 2 连接上键盘,待按键 2 闪烁,连接好设备 2 - (Mac-Company)
    3. 长按Fn+33s,从设备 3 连接键盘,待按键 3 闪烁,连接好设备 3 - (Ipad Pro)
  2. 多设备切换:按下Fn+1Fn+2Fn+3选择之前连接的设备,进行多设备切换
  3. 灯快捷键键,右上角(15 种设置),键盘灯Fn+F5减亮,Fn+F6增亮
  4. 电量查看:Fn+B,注意可以先调低灯光亮度查看
    1. 全亮:电量 >=70%
    2. 第一排灭:电量 30-70%
    3. 第二排灭:电量 0-30%
  5. 有线下取消休眠模式:长按FN+S+O(注意不是零)
  6. 多系统切换,侧边栏支持 Mac/Win 切换
  7. BT(蓝牙)/Cable(有线)切换/Off(关闭)
  8. 恢复出厂设置:长按Fn+J+Z3s 恢复出厂设置
  9. Win 下的一些更多按键,参考: https://item.jd.com/100012895086.html

10.1. 京造键盘 F5、F6 无效的原因

  1. 通过fn+k+c 4s 切换

参考图片:

11. 系统安装相关

11.1. Mac 烧录可引导的 USB 记忆

  1. 方式一:利用dd命令,对下载的 CentOS ios 镜像文件进行烧录(参见下面操作)
  1. 方式一:参照 ubuntu 的教程:https://ubuntu.com/tutorials/create-a-usb-stick-on-macos (我烧录过程中,报错了)

11.2. dd 烧录具体操作

  1. 利用 MAC 磁盘工具,格式化 USB 为 exFAT 格式
  2. 下载 CentOS7 的 iso 镜像资源,参考:http://www.centos.org/download/mirrors/
  3. 利用 mac 的diskutil查看磁盘设备名称
  4. 利用dd命名,复制 CentOS 的 iso 到 USB 驱动
  5. virtuabox上面测试 usb 的驱动

tips: 下面的 dd 拷贝,将/dev/disk2s2,替换成/dev/rdisk2s2,r 代表 raw 元素磁盘拷贝,比块拷贝更快!(想下 Linux 的 IO 栈),利用CTRL+T,可以查看当前 dd 的进度!

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
// 磁盘列表
$ diskutil list
...

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *31.5 GB    disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:       Microsoft Basic Data CENTOS                  31.3 GB    disk2s2

// dd拷贝
$ sudo dd if=./CentOS-7-x86_64-Everything-2003.iso of=/development/rdisk2s2 ibs=256m obs=16m
load: 2.41  cmd: dd 12007 uninterruptible 0.00u 0.15s
1+0 records in
4+0 records out
67108864 bytes transferred in 9.546129 secs (7029956 bytes/sec)
load: 2.46  cmd: dd 12007 uninterruptible 0.00u 0.15s
1+0 records in
6+0 records out
100663296 bytes transferred in 14.703729 secs (6846107 bytes/sec)

11.3. diskutil 和 dd 写入

1
2
3
4
5
6
7
8
// 写入需要通过mac下的diskutil工具先将磁盘卸载
$ diskutil unmount /dev/disk2s1

// 通过sudo dd将资源写入
$ sudo dd if=/Users/Terry/Downloads/cn_windows_10_consumer_editions_version_2004_x64_dvd_0c2eefdb.iso of=/dev/disk2s1 bs=1m

// Mac下观察磁盘的IO情况
$ iostat -dCU 1

12. MAC 远程访问相关(VNC、SSHD、SMB 服务)

12.1. MAC 开启 SSHD 服务或者 SMBD 服务,支持远程登录

进入系统偏好 > 共享

  • 文件共享:在 Mac1 上共享 User1 的数据,在 Mac2 上通过访达 > 前往(连接服务器 CMD+K),利用 SMB 协议访问,比如smb://192.168.3.73
  • 远程登录:在 Mac1 上开放sshd远程登录,支持 Mac2 上通过命令行,ssh Terry@192.168.3.73快速连上,ssh 密码是开机密码

12.2. VNC 服务开启:允许其他人使用 VNC 远程桌面访问您的 Mac 电脑

进入系统偏好 > 共享,有不同的模式支持共享:

  • 远程管理`
    • 设置访问用户:
      • 所有用户,让其他有用户通过 MAC 用户账号来共享屏幕
      • 仅指定用户,指定指定 MAC 用户
    • 电脑设置:可以设置 VNC 访问密码,可以在 Mac2 上通过访达 > 前往(连接服务器 CMD+K),利用 VNC 客户端登录 Mac1
    • 选项:设置访问用户的权限:观察(仅画面共享)、控制(操作)、观察时候显示,如果临时改变配置,需要重新连入 VNC

远程访问端口:5900

1
2
3
4
5
6
// 开启后,在MAC下看下服务5900端口
$ netstat -anp tcp|grep -i listen

$ cat /etc/services|grep 5900
rfb             5900/tcp    vnc-server # VNC Server
rfb             5900/udp    vnc-server # VNC Serve

https://support.apple.com/zh-cn/guide/mac-help/mh11851/mac

12.3. MAC VNC 客户端:mac 下连接其他 vnc 服务

  • 访达 > 前往 > 连接服务器(CMD+K),键入vnc://192.168.1.100
  • 或者两台 MAC 用的同一个 AppleID,共享屏幕权限

12.4. MAC 连接 Win10

主要依赖一个 RDP 客户端,下个Jump Desktophttps://xclient.info/s/jump-desktop.html

速度比 VNC 这类,都要好不少!速度、性能和流畅度上都非常不错,支持全屏、文本粘贴复制、快捷键发送等功能,在各种细节上要比微软的远程桌面优秀很多,可以用它远程连接 Windows 电脑!

13. Jetbrains Library 路径

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh
# reset jetbrains ide evals

OS_NAME=$(uname -s)
JB_PRODUCTS="IntelliJIdea CLion PhpStorm GoLand PyCharm WebStorm Rider DataGrip RubyMine AppCode"

if [ $OS_NAME == "Darwin" ]; then
 echo 'macOS:'

 for PRD in $JB_PRODUCTS; do
     rm -rf `~/Library/Preferences`/${PRD}*/eval
     rm -rf ~/Library/Application\ Support/JetBrains/${PRD}*/eval
 done
elif [ $OS_NAME == "Linux" ]; then
 echo 'Linux:'

 for PRD in $JB_PRODUCTS; do
     rm -rf ~/.${PRD}*/config/eval
     rm -rf ~/.config/${PRD}*/eval
 done
else
 echo 'unsupport'
 exit
fi

echo 'done.'

14. Mac 下触控板失效

打开【活动监视器(Activity Monitor)】,找到【Dock】或者是【程序坞】将其强制退出。

15. 密码重置

参考: https://sspai.com/post/34023

16. 笔记本升级到 BigSur 几个小问题

16.1. 电池显示

系统偏好>程序坞与菜单栏>电池

16.2. 系统偏好设置提示密码不正确

系统偏好信息,解决方案:https://support.apple.com/zh-cn/HT203127

如果您在点按锁形图标来更改设置时,“系统偏好设置”不接受有效的管理员密码,请尝试本文中所述的解决方法。

  • macOS 用户帐户的密码为空。如果您已使用空白密码登录 Mac,请在“用户与群组”偏好设置中更改密码。请勿使用空白密码。
  • 在使用macOS Big Sur 11.1时,搭载 Apple T2安全芯片的Mac机型存在需要重置SMC的问题。在您重置SMC后,“系统偏好设置”应该会接受您的密码。

16.3. 笔记本重置 SMC

重置 SMC:https://support.apple.com/zh-cn/HT201295

16.4. 尝试 1

我的 19 款 Mac Pro 可行,尝试 2 没有进行

  1. 将 Mac 关机。
  2. 按住电源按钮 10 秒钟,然后松开这个按钮。
  3. 等待几秒钟,然后按下电源按钮以将 Mac 开机。

16.5. 尝试 2

  1. 将 Mac 关机。
  2. 在内建键盘上,按住键盘左侧的Control+Option (Alt)+键盘右侧的Shift(Mac 可能会开机)
  3. 按住以上三个按键不松 7 秒钟,然后不松按键的情况下按住电源按钮,如果 Mac 处于开机状态,它将按住这些按键时候关机
  4. 继续按住全部四个按键 7 秒钟,然后松开这些按键。
  5. 等待几秒钟,然后按下电源按钮以将Mac开机。

17. MAC 下进程跟踪

可以通过关闭保护模式,或者 cp 二进制命令再跟踪,亦或是通过-f 跟踪子命令三种方式;

系统完整性保护状态关闭,因为储在每台 Mac 的 NVRAM 中,只能在恢复环境中对其进行修改 Command + R。您将进入恢复环境。单击“实用程序”菜单,然后选择“终端”以打开终端窗口。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
$ csrutil status
System Integrity Protection status: enabled.

$ sw_vers
ProductName:  Mac OS X
ProductVersion: 10.15.3
BuildVersion: 19D76

// 1. 系统完整性保护状态关闭
csrutil disable

// 2. 开启
csrutil enabled

// 2. CP方式
cp $(which whoami) .
dtruss ./whoami

18. 新旧 MAC 同步

18.1. /data 目录文件迁移

  1. 迁移助手
  2. 新版本 MacOS Catalina 不支持直接创建/data目录解决方案,创建初始化挂载/etc/synthetic.conf
  3. 注意从以下目录/System/Volumes/Data/Users/Shared/Relocated\ Items/中拷贝出 data 相关内容
1
2
3
$ cat /etc/synthetic.conf
data    private/data
company private/company

19. 其他 Mac 小 Tips

19.1. git 命令行下 GUI 工具

lazygit 是一款在命令行下的,ACSII 图像化的基于 Golang 开发的 git 仓库管理工具

参考:https://github.com/jesseduffield/lazygit

19.2. 另存为到指定目录

在另存为过程中,通过Command+Shift+G – 显示“前往文件夹”对话框,配合Alfred可以快速保存到指定位置

19.3. 构建应用程序的命令行快捷命令

sublime 快速打开文件:

1
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime

19.4. Paste 在 Mac 下的快捷粘贴

1
2
3
4
5
// 复制
$ echo hello|pbcopy

// 粘贴
$ pbpaste

19.5. MAC 套接字打开的文件调整(ulimit 资源调整)

Error: listen tcp 127.0.0.1:1313: socket: too many open files in system

  • 对于 OS X Sierra(10.12.X):
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// 编辑配置文件:
vim /Library/LaunchDaemons/limit.maxfiles.plist

// 内容
<?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  <plist version="1.0">
    <dict>
      <key>Label</key>
      <string>limit.maxfiles</string>
      <key>ProgramArguments</key>
      <array>
        <string>launchctl</string>
        <string>limit</string>
        <string>maxfiles</string>
        <string>64000</string>
        <string>524288</string>
      </array>
      <key>RunAtLoad</key>
      <true/>
      <key>ServiceIPC</key>
      <false/>
    </dict>
  </plist>

// 更改配置权限
sudo chown root:wheel /Library/LaunchDaemons/limit.maxfiles.plist

// 加载设定配置
sudo launchctl load -w /Library/LaunchDaemons/limit.maxfiles.plist

// 检测限制参数
launchctl limit maxfiles

19.6. 无插件如何在 Chrome 下完成 HTML 页面截图

  1. 打开 Chrome 开发者工具
  2. 选择Element Html 元素标签页,鼠标点击 Body 元素
  3. 按住组合键cmd+shift+p,打开调试命令行
  4. 输入screen关键字,选择Capture full screenshot,另存为即可截取全屏图片;
  5. 同时该功能支持,截取部分元素,强大的 Chrome!!

19.7. “Developer tools access” 需控制另一个进程才能继续调试 解决方案

1
2
3
DevToolsSecurity --status 查看状态
DevToolsSecurity --enable 输入密码,修改为enable,即可用
DevToolsSecurity --disable 输入密码,修改为disable,即关闭