![](/blog/posts/Mac-Skills/topic.jpg)
总结了一些MacOS的使用技巧,不断更新。
终端相关
快捷键
终端优化
Homebrew
Homebrew是类似于Linux的apt-get软件包管理器。
安装与卸载
官方途径
在终端输入以下命令即可。
1 2 3 4 5
| # 安装 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 卸载 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
|
国内途径
最新方法
1 2 3 4 5
| # 安装 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
# 卸载 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"
|
或以下命令。
1 2 3 4 5
| # 安装 /bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
# 卸载 /bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/uninstall.sh)"
|
若命令执行中卡在Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'
,可执行以下命令后再重新执行脚本。
1 2 3
| cd "$(brew --repo)/Library/Taps/" mkdir homebrew && cd homebrew git clone git://mirrors.ustc.edu.cn/homebrew-core.git
|
若为安装cask时卡住,则为以下命令。
1 2 3
| cd "$(brew --repo)/Library/Taps/" cd homebrew git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
|
【进阶】对于M1芯片
M1芯片需要使用ARM版的Homebrew,安装路径为/opt/homebrew。安装完成后须在终端输入以下命令以设置环境变量。
1 2 3 4 5 6 7
| # bash用户 echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.bash_profile eval "$(/opt/homebrew/bin/brew shellenv)"
# zsh用户 echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc eval "$(/opt/homebrew/bin/brew shellenv)"
|
也可在M1芯片安装普通的x86版,命令如下。
1
| arch -x86_64 /bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
若同时安装了两个版本,需要在/.zshrc或/.bash_profile添加以下命令。
1 2
| alias abrew='arch -arm64 /opt/homebrew/bin/brew' alias ibrew='arch -x86_64 /usr/local/bin/brew'
|
保存后,在终端输入abrew
表示使用ARM版,输入ibrew
表示使用x86版。
失效教程
在终端输入以下命令以获取install文件。
1
| curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install
|
打开所获取的install文件(一般在用户目录),更改脚本中BREW_REPO
和CORE_TAP_REPO
两处,两个镜像源任选一个。
1 2 3 4 5 6 7
| // 中国科学技术大学源 BREW_REPO = "https://mirrors.ustc.edu.cn/brew.git".freeze CORE_TAP_REPO = "https://mirrors.ustc.edu.cn/homebrew-core.git".freeze
// 清华大学源 BREW_REPO = "https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git".freeze CORE_TAP_REPO = "https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git".freeze
|
在终端输入以下命令以执行脚本即可。
1
| /usr/bin/ruby brew_install
|
卸载则输入以下命令。
1 2 3 4 5 6 7
| cd `brew --prefix` rm -rf Cellar brew prune rm `git ls-files` rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions rm -rf .git rm -rf ~/Library/Caches/Homebrew
|
更换默认源
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
| # 中国科学技术大学源 ## 替换核心软件仓库 cd "$(brew --repo)" git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
## 替换cask软件仓库 cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
## 替换Bottles源 ## 以下二选一 (bash用户) echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile source ~/.bash_profile
(zsh用户) echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc source ~/.zshrc
# 清华大学源 ## 替换核心软件仓库 cd "$(brew --repo)" git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
## 替换cask软件仓库 cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
## 替换Bottles源 ## 以下二选一 (bash用户) echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile source ~/.bash_profile
(zsh用户) echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc source ~/.zshrc
|
也可通过以下链接获取换源命令。
1
| https://brew.idayer.com/guide/change-source
|
完成后在终端输入以下命令更新Homebrew。
1 2
| brew update brew upgrade
|
常用命令
命令 |
操作 |
brew help |
帮助 |
brew list |
列出安装包 |
brew update |
更新Homebrew |
brew upgrade |
更新包 |
brew install [包名] |
安装包 |
brew install [包名]@版本 |
安装固定的包 |
brew uninstall [包名] |
卸载包 |
brew info [包名] |
查看包信息 |
brew -v |
Homebrew版本 |
brew search [包名] |
搜索可安装的包 |
brew autoremove |
自动卸载未用包 |
brew cleanup |
清理所有包的旧版本 |
brew outdated |
查看需要更新的包 |
brew deps –installed –tree |
列出软件包的依赖关系 |
常用包
tree
用树状结构表示当前目录下的文件层级。
tcl
Python的图形化界面依赖。
常见问题
brew install xxx 404
bottles镜像地址更新,须在/.zshrc或/.bash_profile中修改HOMEBREW_BOTTLE_DOMAIN的值。可通过更换默认源中的链接获取最新的bottles镜像地址。
command not found: brew
对于ARM版,需安装步骤添加环境变量。
对于x86版,可尝试在/.zshrc或/.bash_profile手动添加以下环境变量。
1 2 3 4 5 6 7
| # bash用户 echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)"' >> ~/.bash_profile eval "$(/usr/local/Homebrew/bin/brew shellenv)"
# zsh用户 echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)"' >> ~/.zshrc eval "$(/usr/local/Homebrew/bin/brew shellenv)"
|
设置zsh为默认Shell
Catalina及以上系统默认shell已为zsh,无需设置。
可在终端输入以下命令查看当前使用的shell和已安装的shell。
1 2
| echo $SHELL cat /etc/shells
|
若未安装zsh,可通过以下命令安装。
输入以下命令,更换默认shell为zsh,重启终端生效。
oh-my-zsh
安装
oh-my-zsh用于美化zsh终端,采用下列命令安装oh-my-zsh。
1
| sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
|
在终端输入以下命令以打开配置文件。
按i键以修改文件。修改ZSH_THEME
,即可修改oh-my-zsh的主题。oh-my-zsh的GitHub Wiki页面提供了主题列表。
1
| https://github.com/robbyrussell/oh-my-zsh/wiki/themes
|
推荐使用以下主题。
在文件末尾加入以下代码,以在终端不显示电脑名称。输入后按Esc
,然后输入:wq
并回车,保存并退出。
修改完成后,需运行以下命令以更新zsh配置。
使用agnoster主题需要安装Powerline字体。在终端运行以下命令。
1 2 3
| git clone https://github.com/powerline/fonts.git --depth=1 cd fonts ./install.sh
|
在终端菜单点击偏好设置,在描述文件选项卡新建一个描述文件,将文本的字体修改为Powerline系的字体,注意需要在字体集中选择所有字体才能找到。保存后将该配置文件设置为默认,然后重启终端即可。
若希望改变主题默认配色,可在配置文件中配置相应的ANSI颜色。
外置主题
除使用oh-my-zsh内置主题,也可安装其它外置主题。
Powerlevel10k
终端输入以下命令。
1
| git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
|
在~/.zshrc修改以下内容,保存后重启终端。
1 2
| POWERLEVEL9K_MODE="nerdfont-complete" ZSH_THEME="powerlevel10k/powerlevel10k
|
该主题需要使用Nerd Fonts。打开以下链接,下载Hack.zip后解压,安装其中的所有字体。
1
| https://github.com/ryanoasis/nerd-fonts/releases
|
完成后在终端的偏好设置中,将配置文件的字体设置为Hack Nerd Font。在终端自动配置流程将被触发,若未被触发,可运行以下命令。
更新
在终端输入以下命令即可。
插件
zsh-syntax-highlighting
语法高亮插件,在终端输入以下命令安装。
1 2
| cd ~/.oh-my-zsh/custom/plugins &&\ git clone git://github.com/zsh-users/zsh-syntax-highlighting.git
|
修改~/.zshrc中的plugins,添加zsh-syntax-highlighting
即可。
1 2 3
| plugins=( zsh-syntax-highlighting )
|
zsh-autosuggestions
自动建议补全插件,在终端输入以下命令安装。
1
| git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
修改~/.zshrc中的plugins,添加zsh-autosuggestions
即可。
1 2 3
| plugins=( zsh-autosuggestions )
|
auto-jump
自动跳转插件,在终端输入以下命令安装。
1 2 3
| git clone git://github.com/wting/autojump.git cd autojump ./install.py or ./uninstall.py
|
也可通过brew安装。
incr
自动补全插件。打开下面网站下载incr插件,并放置于/.oh-my-zsh/customs/plugins/incr
中(若无则新建)。
1
| https://mimosa-pudica.net/zsh-incremental.html
|
修改~/.zshrc,在文件末尾添加以下代码即可。
1
| source $ZSH/custom/plugins/incr/incr*.zsh
|
proxychains-ng
proxychains-ng用于终端翻墙,可用Homebrew安装。
1
| brew install proxychains-ng
|
在终端输入以下命令以打开配置文件。
1
| vim /usr/local/etc/proxychains.conf
|
在[ProxyList]
下注释掉原来的代理,并添加代理类型。示例如下。
如果所在的网络很复杂,可能需要在配置文件中启用dynamic_chain
,然后在[ProxyList]
下添加多个代理。两种类型的区别如下。
类型 |
含义 |
dynamic_chain |
按照列表中出现的代理服务器的先后顺序组成一条链,如果有代理服务器失效,则自动将其排除,但至少要有一个是有效的 |
strict_chain(默认) |
按照后面列表中出现的代理服务器的先后顺序组成一条链,要求所有的代理服务器都是有效的 |
在~/.zshrc
末尾添加如下内容并保存。
1 2 3 4
| # --------------------------------------- # proxychain-ng config # --------------------------------------- alias pc='proxychains4'
|
配置完成后即可使用,示例如下。
1
| pc curl http://www.google.com
|
终端命令
macOS中用\40
代表空格。
磁盘工具添加调试菜单
1
| defaults write com.apple.DiskUtility DUDebugMenuEnabled 1
|
显示Spotlight的搜索标题
1 2 3
| mdimport /usr/include mdimport /usr/local/include mdimport /System/Library/Frameworks
|
安装Xcode Command Line
若提示不能下载该软件,因为网络出现问题
,可打开以下链接,并搜索Command Line
。可以通过在Mac App Store搜索Xcode,通过查看适合本机系统的Xcode版本以确定应当使用的Command Line版本。下载后安装即可。
1
| https://developer.apple.com/download/more/
|
文件比较
十进制转十六进制
获取开机日志
1
| log show --predicate "processID == 0" --start $(date "+%Y-%m-%d") --debug > ~/Desktop/bootlog.txt
|
应用多开
1
| open -n /Applications/xxxx.app
|
测量系统放电瓦数
若想保留此函数的功能,则需将此函数写入~/.profile
中。
1 2 3 4 5 6 7 8 9 10 11 12 13
| // 将以下函数直接复制到终端运行 watts() { FORMULA=$(system_profiler SPPowerDataType | awk '/Amperage\ \(mA\):/ {printf $3" * "}; /Voltage\ \(mV\):/ {print $3}') WATTS=$(echo "scale=3; ${FORMULA} / 1000000" | bc 2>/dev/null) if ! [[ ${WATTS} =~ [0-9] ]]; then WATTS=0 fi echo "${WATTS} mW" }
// 使用 watts
|
终端的电源活动监视器
若想保留此函数的功能,则需将此函数写入~/.profile
中。
1 2 3 4 5 6 7
| // 创建函数 powertop() { top -stats pid,command,power -o power }
// 调用 powertop
|
查询CPU运行情况
1
| sudo powermetrics --show-process-energy
|
把安装应用调成任意来源
1
| sudo spctl --master-disable
|
获取某磁盘的UUID
1
| diskutil info diskXsY | grep -i "Partition UUID" | rev | cut -d' ' -f 1 | rev
|
取消4位数密码限制
1 2
| pwpolicy -clearaccountpolicies passwd
|
Catalina挂载系统分区
1
| sudo -S mount -uw / && killall Finder
|
查看睡眠时间
1
| sysctl -a | grep sleeptime
|
查看睡眠唤醒时间
1
| sysctl -a | grep waketime
|
查看最近一天睡眠唤醒原因
1
| log show --last 1d | grep "Wake reason"
|
检查AppleALC和Lilu是否工作正常
1
| log show --predicate 'process == "kernel" AND (eventMessage CONTAINS "AppleALC" OR eventMessage CONTAINS "Lilu")' --style syslog –source
|
关闭系统更新提醒红点
1
| defaults write com.apple.systempreferences AttentionPrefBundleIDs 0
|
删除权限不足的文件
1
| sudo rm -r -f [你要删除的文件(可以从Finder拖进来,支持多个)]
|
关机
开启原生SSD Trim功能
一键查询硬件信息
1
| sh -c "$(curl -fsSL https://raw.githubusercontent.com/daliansky/dell7000/master/Tools/archey)"
|
笔记本插电源出提示音
1 2 3 4 5
| // 开启 defaults write com.apple.PowerChime ChimeOnAllHardware -bool true; open /System/Library/CoreServices/PowerChime.app &
// 关闭 defaults write com.apple.PowerChime ChimeOnAllHardware -bool false; killall PowerChime
|
手动安装kexts
移动kexts
1 2 3 4 5 6 7
| // 删除重名/错误的kexts sudo rm -Rf /Library/Extensions/KextToInstall.kext sudo rm -Rf /System/Library/Extensions/KextToInstall.kext
// 把新kext移动到LE或SLE sudo cp -R KextToInstall.kext /Library/Extensions sudo cp -R KextToInstall.kext /System/Library/Extensions
|
修复权限和重建缓存
Mac不使用内核文件进行引导,而使用预链接内核。重建缓存即重建内核缓存/预链接内核。可用以下终端命令,也可在磁盘工具中选择macOS磁盘并点击修复。以下命令仅适用于Catalina系统及以下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| # 修复权限 sudo chmod -Rf 755 /S*/L*/E* sudo chown -Rf 0:0 /S*/L*/E* sudo chmod -Rf 755 /L*/E* sudo chown -Rf 0:0 /L*/E* sudo rm -Rf /S*/L*/PrelinkedKernels/* sudo rm -Rf /S*/L*/Caches/com.apple.kext.caches/*
# 重建缓存(法一) # 将-U后面的改为其它路径,即可在其它盘上进行重建缓存 sudo touch -f /S*/L*/E* sudo touch -f /L*/E* sudo kextcache -Boot -U /
# 重建缓存(法二) sudo kextcache -i /
|
让AirDrop支持有线传输
1
| defaults write com.apple.NetworkBrowser BrowseAllInterfaces 1 && killall Finder
|
清空iCloud、iMassage和FaceTime缓存
1 2 3 4 5 6 7 8 9 10 11 12 13
| cd ~/Library/Caches/ rm -R com.apple.Messages* rm -R com.apple.imfoundation* cd ~/Library/Preferences/
rm com.apple.iChat* rm com.apple.icloud* rm com.apple.ids.service* rm com.apple.imagent* rm com.apple.imessage* rm com.apple.imservice* rm -R ~/Library/Messages/
|
终端ftp工具
1 2 3 4 5
| // 安装 brew install inetutils
// 使用 ftp
|
设置macOS电源相关
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
| // 查看系统范围内的电源状态 pmset -g pmset -g live
// 查看电源状态 pmset -g assertions
// 从日志查看电源状态 pmset -g log
// -a针对所有电源,-b针对电池电源,-c针对壁式充电器电源,-u以UPS电源为目标 // 休眠到内存(台式机默认设置) sudo pmset -a hibernatemodes 0
// 休眠到硬盘 sudo pmset -a hibernatemodes 1
// 混合休眠(笔记本电脑默认配置) sudo pmset -a hibernatemodes 3
// 省电休眠 sudo pmset -a hibernatemode 25
// 关闭powernap sudo pmset -a powernap 0
// 关闭休眠 sudo pmset -a autopoweroff 0 sudo pmset -a standby 0
// 重置设置 pmset -a restoredefaults
// 查看睡眠唤醒原因 pmset -g log | grep -Ei 'wake.*due'
// 关闭硬盘摔落保护功能 sudo pmset -a sms 0
|
下表为参数含义对照。
参数 |
含义 |
proximitywake |
相同iCloud ID的设备靠近唤醒(1开启,0关闭) |
disksleep |
设置不活动后磁盘停止旋转之前的时间,值以分钟为单位(默认10) |
standby |
在系统已休眠一段时间后,此功能将从休眠转变为休眠状态(1开启,0关闭) |
standbydelayhigh/standbydelaylow |
将睡眠会话写入磁盘并关闭内存电源之前的延迟(以秒为单位)。当电池电量超过50%时,使用standbydelaylow,当电池电量低于50%时,使用standbydelaylow。对于台式机,这些值应相同 |
highstandbythreshold |
待机延迟的电池阈值(默认50%) |
autopoweroff |
从休眠状态转换为关闭状态 |
autopoweroffdelay |
计算机关闭之前的延迟(以秒为单位) |
清空bootercfg存储在NVRAM的变量
1
| sudo nvram bootercfg="log=0 debug=0"
|
将逻辑卷转换为物理卷
1
| sudo diskutil corestorage revert /
|
查看加载驱动
1 2 3 4 5 6 7 8 9 10 11 12
| // 查看所有加载的驱动 kextstat
// 查看除苹果以外加载的驱动 kextstat | grep -v "com.apple"
// 查看加载的非官方驱动 kextstat | grep -v "com.apple" | grep -v "Energy"
// 查看特定名称的驱动(以ACPIplat为例) kextstat | grep -y acpiplat kextstat | grep -i acpiplat
|
Finder显示完整文件路径
1 2 3 4 5
| // 显示 defaults write com.apple.finder _FXShowPosixPathInTitle -bool TRUE && killall Finder
// 取消显示 defaults write com.apple.finder _FXShowPosixPathInTitle -bool FALSE && killall Finder
|
用Finder打开终端当前路径
终端调用Chrome
1 2 3 4 5
| // 打开Chrome浏览器 open -a Google\ Chrome --args -disable-web-security
// 直接打开网站 open www.baidu.com
|
屏蔽系统更新
1
| sudo softwareupdate --ignore "macOS Catalina"
|
去掉应用的小红点提示
1
| defaults write com.apple.systempreferences AttentionPrefBundleIDs 0 && killall Dock
|
配置Safari的开发功能
或打开Safari后选择偏好设置
,勾选高级
选项卡下的在菜单栏显示开发菜单
,也可达到相同效果。
1 2 3 4 5
| // 开启 defaults write com.apple.Safari IncludeInternalDebugMenu 1
// 关闭 defaults write com.apple.Safari IncludeInternalDebugMenu 0
|
制作Mac安装盘
以Sierra安装包为例。
1
| sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/Sierra --applicationpath /Applications/Install\ macOS\ Sierra.app --nointeraction
|
._文件删除
1 2 3
| dot_clean [路径] // 或 find . -type f -name '._*' -delete
|
删除.DS_Store
1
| find . -name '*.DS_Store' -type f -delete
|
禁止/启用.DS_Store自动生成
1 2 3 4 5
| // 禁止 defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
// 启用 defaults delete com.apple.desktopservices DSDontWriteNetworkStores
|
zsh导入bash环境变量
向~/.zshrc
添加以下代码。
在终端执行以下命令即可。
暂时在zsh中使用bash
查看EFI版本
EFI32或EFI64。
1
| ioreg -l -p IODeviceTree | grep firmware-abi
|
系统技巧
查看系统版本
点击菜单栏中的关于本机即可。或在磁盘工具中也能看到磁盘对应的系统版本。
系统网络在线重装
在开机时按住以下快捷键之一即可。
快捷键 |
效果 |
Command+R |
重新安装当前系统版本 |
Option+Command+R |
升级到最新版macOS |
Shift+Option+Command+R |
安装出厂时的macOS或与其最接近的官方仍在提供的版本 |
访问Mac共享
在Mac打开设置,选择共享-文件共享,点击选项
,勾选两个复选框,并勾选用于共享的用户。回到设置页面,打开网络偏好设置
,选择活跃的连接,点击高级-WINS,输入Windows的工作组名称,一般为WORKGROUP。
在Windows端打开运行,输入\\[Mac的IP地址]
即可访问。
旧款Mac安装Catalina
使用macOS Catalina Patcher即可。
1
| http://dosdude1.com/catalina/
|
直接下载Boot Camp驱动程序
使用Brigadier即可。
1
| https://github.com/timsutton/brigadier/releases
|
安全模式下读取EFI分区
注意,此法不能读取内置Windows分区和外接驱动器(非APFS/HFS)分区。
在正常模式的系统下执行以下命令以获取msdosfs.kext,默认在根目录的kexts文件夹下。
1 2 3 4 5 6
| sudo mkdir /kexts sudo cp -RX /System/Library/Extensions/msdosfs.kext /kexts sudo /usr/libexec/PlistBuddy -c "Add :OSBundleRequired string" /kexts/msdosfs.kext/Contents/Info.plist sudo /usr/libexec/PlistBuddy -c "Set :OSBundleRequired \"Safe Boot\"" /kexts/msdosfs.kext/Contents/Info.plist sudo chmod -Rf 755 /kexts/msdosfs.kext sudo chown -Rf 0:0 /kexts/msdosfs.kext
|
在安全模式下通过以下命令加载此kext,再挂载EFI分区即可。
1
| sudo kextload /kexts/msdosfs.kext
|
连接ZJU有线网络
打开系统偏好设置-网络,点击+,接口选择vpn,类型选L2TP/IPSec,完成后填写下列信息。
1 2
| 服务器地址 / 10.5.1.7 账户名称 / 学号@a10(20/50元包月则为@a20/@a50)
|
点击鉴定设置-密码并输入,保存后点击高级
。会话选项下三个选项均勾选,保存。打开终端输入以下代码。
1
| sudo vim /etc/ppp/options
|
按i
键后输入下列语句。
1 2
| plugin L2TP.ppp l2tpnoipsec // 第一个字母为小写L
|
按Esc后输入:wq
并回车,回到网络设置界面。连接上述设置好的VPN,正常情况下连接成功。
重置蓝牙配置
进入系统盘的/Library/Preference,删除com.apple.Bluetooth.plist
文件后重启即可。
备份EFI分区脚本
脚本地址如下,运行EFI Backup-Restore.command即可。
1
| https://github.com/corpnewt/EFI-Backup-Restore
|
系统精简
打开终端并输入以下命令。
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
| // 获取Su权限 sudo su passwd root su root
// 解除系统应用 cd / mkdir RemovedFiles cd RemovedFiles mkdir System-Library-LaunchAgents FLA=/RemovedFiles/System-Library-LaunchAgents/ cd /System/Library/LaunchAgents/ mv com.apple.AddressBook* $FLA # 通讯录 mv com.apple.CalendarAgent.plist $FLA # 日历 mv com.apple.iCloudUserNotifications.plist $FLA # iCloud mv com.apple.icbaccountsd.plist $FLA # iCloud mv com.apple.icloud.fmfd.plist $FLA # iCloud mv com.apple.cloud* $FLA # iCloud mv com.apple.imagent.plist $FLA # FaceTime mv com.apple.IMLoggingAgent.plist $FLA # FaceTime mv com.apple.AirPlayUIAgent.plist $FLA # Airplay mv com.apple.AirPortBaseStationAgent.plist $FLA mv com.apple.bird.plist $FLA # iCloud 缓存 mv com.apple.findmymacmessenger.plist $FLA mv com.apple.gamed.plist $FLA # macOS 游戏中心 mv com.apple.parentalcontrols.check.plist $FLA # 家长控制 mv com.apple.Maps.pushdaemon.plist $FLA mv com.apple.ScreenReaderUIServer.plist $FLA mv com.apple.speech.* $FLA
cd /System/Library/LaunchDaemons/ launchctl unload -wF com.apple.AirPlayXPCHelper.plist # AirPlay launchctl unload -wF com.apple.apsd.plist # Apple push notification
# 应先在系统偏好设置中禁用位置服务,再执行该语句 launchctl unload -wF com.apple.locationd.plist
launchctl unload -wF com.apple.findmymac.plist launchctl unload -wF com.apple.findmymacmessenger.plist
launchctl unload -wF com.apple.icloud.findmydeviced.plist launchctl unload -wF com.apple.cloudfamilyrestrictionsd-mac.plist launchctl unload -wF com.apple.mbicloudsetupd.plist
launchctl unload -wF com.apple.dvdplayback.setregion.plist
launchctl unload -wF com.apple.SubmitDiagInfo.plist launchctl unload -wF com.apple.CrashReporterSupportHelper.plist launchctl unload -wF com.apple.ReportCrash.Root.plist launchctl unload -wF com.apple.GameController.gamecontrollerd.plist
launchctl unload -wF com.apple.spindump.plist launchctl unload -wF com.apple.metadata.mds.spindump.plist
# Disable cups (common unix printing service) #launchctl unload -wF org.cups.cupsd.plist #launchctl unload -wF org.cups.cups-lpd.plist
|
更换字体
打开/System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreText.framework/Resources/DefaultFontFallbacks.plist,将STHeitiSC-Light进行修改即可,如冬青黑体简体中文W3为HiraginoSansGB-W3。
远程控制
可通过iMessage,打开后选择或新建对方的信息会话,点击右上角后选择共享即可。
删除Launchpad的废图标
打开访达,选择前往-前往文件夹,输入/private/var/folders
并回车。在本路径下搜索com.apple.dock.launchpad
,双击进去可看到db。
打开终端并输入以下命令即可。
1 2 3 4
| # 替换为刚才找到的db路径 cd /private/var/folders/[...]/db
sqlite3 db "delete from apps where title='[需要删除的应用名称]';"&&killall Dock
|
操作技巧
按住Command键并拖动菜单栏图标可调整其顺序,拖出菜单栏则清除此图标。
若菜单栏上没有图标,则转至/System/Library/CoreServices/Menu Extras
,直接用鼠标将Eject.menu拖放至菜单栏即可。
常用快捷键
Mac键盘与普通键盘键位对应如下表。
Mac |
Windows |
Command |
Windows徽标键 |
Option |
Alt键 |
Delete |
空格(Backspace)键 |
Return |
回车(Enter)键 |
替换Command和Control键后,常用快捷键对应如下(Space键即空格键,Win键即Windows徽标键)。
Mac |
Windows |
作用 |
常用 |
|
|
Option |
|
显示菜单隐藏项 |
Command+C |
Ctrl+C |
复制 |
Command+V |
Ctrl+V |
粘贴 |
Command+Option+V |
Ctrl+Alt+V |
(Ctrl+C后)剪切 |
Command+Delete |
Ctrl+Backspace |
删除 |
Command+Z |
Ctrl+Z |
撤销 |
Command+A |
Ctrl+A |
全选 |
Command+F |
Ctrl+F |
全选 |
Command+S |
Ctrl+S |
保存 |
截屏 |
|
|
Option |
|
维持比例 |
Control |
|
保存截图到剪切板 |
Command+Shift+3 |
Ctrl+Shift+3 |
截取全部屏幕到文件 |
Command+Shift+Control+3 |
Ctrl+Shift+Win+3 |
截取全部屏幕到剪切板 |
Command+Shift+4 |
Ctrl+Shift+4 |
截取所选屏幕区域到一个文件 |
Command+Shift+Control+4 |
Ctrl+Shift+Win+4 |
截取所选屏幕区域到剪贴板 |
Command+Shift+Control+Space+4 |
Ctrl+Shift+Win+Space+4 |
仅捕捉一个窗到剪贴板 |
文件 |
|
|
Control+Command+I |
|
查看多个文件简介 |
Command+I |
|
查看单个文件简介 |
Command+Shift+N |
Ctrl+Shift+N |
新建文件夹 |
Command+Shift+G |
Ctrl+Shift+G |
输入文件路径 |
Command+Up |
Ctrl+Up |
回到上级目录 |
Command+Down |
Ctrl+Down |
进入下级目录(打开文件) |
Space |
Space |
预览 |
Command+O |
Ctrl+O |
打开所选文件 |
Command+Shift+Delete |
Ctrl+Shift+Backspace |
清倒废纸篓 |
临时禁止通知中心弹出通知
按住Option
后点击右上角通知中心图标即可。
把PNG转成JPG
直接修改后缀名即可。
触控板设置三指拖移
进入系统偏好设置-辅助功能-鼠标与触控板-触控板选项…,勾选启用拖移并选择三指拖移即可。
归类文件
选中多个文件,右键选择使用多个文件新建文件夹
。
显示隐藏文件
利用command(⌘)+shift+.
即可。
也可打开终端,输入以下命令。
1 2 3 4 5 6 7
| // 显示隐藏文件 defaults write com.apple.finder AppleShowAllFiles -bool true // 或defaults write com.apple.finder AppleShowAllFiles YES
// 隐藏隐藏文件 defaults write com.apple.finder AppleShowAllFiles -bool false // 或defaults write com.apple.finder AppleShowAllFiles NO
|
删除所有短信
设置短信为保留30天,然后设置日期,拨动往后的几个月份直至短信被删除即可。
软件技巧
破解百度网盘客户端限速
打开终端,输入下列命令以执行破解脚本。注意,只适用于2.2.2及以下的版本,2.2.3以后均加入了监测机制。
1
| cd ~/Downloads && git clone https://github.com/CodeTips/BaiduNetdiskPlugin-macOS.git && ./BaiduNetdiskPlugin-macOS/Other/Install.sh
|
完成后打开百度云盘,此时要输入大概十次系统密码,进入云盘界面发现限速已经破解。下载时点击免费试用
,倒计时将会保持在8秒。
QQ功能扩展
下载以下仓库,解压后在终端运行Other文件夹中的install.sh
即可。
1
| https://github.com/TKkk-iOSer/QQPlugin-macOS/tree/master
|
微信功能扩展
该插件已造成封号,不推荐使用。
在终端输入以下命令即可。
1
| curl -o- -L https://raw.githubusercontent.com/lmk123/oh-my-wechat/master/install.sh | bash -s
|
项目地址如下。
1
| https://github.com/MustangYM/WeChatExtension-ForMac
|
安装扩展后可以多开微信,在命令行输入以下命令即可。
1
| open -n /Applications/WeChat.app
|
Quick Look插件
通过安装Quick Look插件,可以在点击空格预览的时候有更多功能,仓库如下。
1
| https://github.com/sindresorhus/quick-look-plugins
|
在终端通过以下命令进行安装,常用插件有qlcolorcode、qlstephen、qlmarkdown、quicklook-json、qlimagesize、suspicious-package等。
Xcode SDK文件
用于为Xcode提供旧版SDK文件。
1
| https://github.com/phracker/MacOSX-SDKs
|
常用APP
APP库
普通
1 2 3
| https://github.com/catofmrlu/MacApps https://github.com/hemanth/awesome-pwa https://www.macupdate.com/
|
破解
1 2 3 4 5
| http://mac-torrent-download.net https://cmacapps.com https://xclient.info/ https://www.waitsun.com/ https://www.macbl.com/
|
磁盘分区
Paragon Hard Disk Manager
磁盘分区。
1
| https://www.zhinin.com/paragon_hard_disk_manager-mac.html
|
划词翻译
Bob
1
| https://github.com/ripperhe/Bob
|
OCR识别
CaptuocrToy
1
| https://github.com/gragrance/CaptuocrToy/releases
|
系统性能与监控
DPCIManager
查看硬件信息。
1
| https://sourceforge.net/projects/dpcimanager/files/latest/download
|
DarwinDumper
输出硬件信息。
1
| https://bitbucket.org/blackosx/darwindumper/downloads/
|
Geekbench
跑分软件。
1
| https://www.geekbench.com/
|
Intel Power Gadget
查看CPU状态。
1
| https://software.intel.com/en-us/articles/intel-power-gadget
|
用于性能监控。
1 2 3 4 5 6
| // 下载地址 https://bjango.com/mac/istatmenus/
// 注册信息 Email: 982092332@qq.com SN: GAWAE-FCWQ3-P8NYB-C7GF7-NEDRT-Q5DTB-MFZG6-6NEQC-CRMUD-8MZ2K-66SRB-SU8EW-EDLZ9-TGH3S-8SGA
|
IOJones
IORegistryExplorer的替代品。
1
| https://sourceforge.net/projects/iojones/
|
Heaven
显卡性能测试软件。
1
| https://benchmark.unigine.com/heaven
|
Novabench
跑分软件。
1
| https://novabench.com/download#personal
|
CUDA-Z
查看Nvidia驱动。
1
| https://sourceforge.net/projects/cuda-z/
|
AJA System Test
测试磁盘速度。
1
| https://macdownload.informer.com/aja-system-test/download/
|
MachineProfile
查询电脑信息,Mac App Store可下载。
系统设置
Simple Display Rotation Wrapper
屏幕旋转。
1
| https://github.com/fewtarius/displayrotation
|
只改变鼠标滚轮方向而不改变触控板滑动方向,在终端输入以下命令安装。此APP会让三指点击失效。
1
| brew cask install scroll-reverser
|
ShowHiddenFiles
显示/隐藏文件。
1
| https://gotoes.org/sales/ShowHiddenFilesMacOSX/How_To_Show_Hidden_Files.php
|
Trim Enabler
为SSD打开Trim功能。
1
| https://cindori.org/trimenabler/
|
Pacifist
安装包文件提取工具。
1
| https://www.zhinin.com/pacifist-mac.html
|
注册码如下。
1 2
| Name / Tom Smith Serial number / 4Ip8izH03A-0K48zlp3zw-1Sp
|
EFI MountianShow
挂载EFI分区。
1
| https://www.tonymacx86.com/threads/updated-efi-mounter-v3-renamed-to-efi-mountianshow.210413/
|
RAMDisk Utility
生成内存缓存盘,程序在其中运行速度可明显提升。
1
| https://www.firewolf.science/2015/06/ramdisk-utility-for-os-x/
|
TotalFinder
Finder的增强。
1
| http://www.pc6.com/mac/113433.html
|
系统优化
OnyX
功能全面的系统清理工具。
1
| https://www.titanium-software.fr/en/onyx.html
|
编辑工具
Hex Fiend
Hex编辑器。
1
| http://ridiculousfish.com/hexfiend/
|
FileMerge
安装Xcode后即可搜索到,用于比较代码差异,常用于编写SSDT时比较打补丁前后的DSDT差异。
音乐播放
VOX
音乐播放软件。
1
| https://vox.rocks/mac-music-player/download
|
其它
Touchbar Pet
Touchbar养宠物。
1
| https://www.cr173.com/mac/1100456.html
|
Classic Finder
模仿旧版Finder。
1
| https://bitbucket.org/bszyman/classic-finder-app/downloads/
|
Itsycal
任务栏添加日历。
1
| https://www.mowglii.com/itsycal/
|
Keka
解压缩软件。
1
| https://www.keka.io/zh-cn/
|
Magnet
分屏软件。
1 2
| https://macwk.com/soft/magnet https://www.zhinin.com/magnet-mac.html
|
Python 3
Big Sur已自带python3,Catalina及以下自带python 2。
安装
通过pyenv
1 2 3 4 5 6 7 8 9 10 11 12
| brew install pyenv echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc echo 'export LDFLAGS="${LDFLAGS} -L/usr/local/opt/zlib/lib"' >> ~/.zshrc echo 'export CPPFLAGS="${CPPFLAGS} -I/usr/local/opt/zlib/include"' >> ~/.zshrc echo 'export PKG_CONFIG_PATH="${PKG_CONFIG_PATH} /usr/local/opt/zlib/lib/pkgconfig"' >> ~/.zshrc source ~/.zshrc exec "$SHELL" brew install openssl readline sqlite3 xz zlib pyenv install -l pyenv install [版本号]
|
旧方法
查看系统自带的python版本。
用Homebrew安装python 3。
查看python 3位置,并记录。
打开配置文件。
1 2 3 4 5 6
| // 以下二选一 (终端shell为zsh) vi ~/.zshrc
(终端shell为bash) vi ~/.bash_profile
|
在文件中添加下面语句,保存并退出。
1 2
| // 路径改为上面记录的python 3路径 alias python="/usr/local/bin/python3"
|
编译系统配置文件。
1 2 3 4 5 6
| // 以下二选一 (终端shell为zsh) source ~/.zshrc
(终端shell为bash) source ~/.bash_profile
|
查看系统python版本,应已改为python 3。
pip
pip是python的安装包工具。
安装
在终端输入以下命令即可。
更新
注意不要用sudo。
1
| pip install --user --upgrade pip
|
卸载
在终端输入以下命令即可。
包管理
卸载所有由pip安装的包
1
| pip uninstall -y -r <(pip freeze)
|
常见问题
安装后出现Warning: pip is being invoked by an old script wrapper
不要将pip和sudo一起使用,否则将容易出现该错误。
若出现该错误,可打开~/.zshrc,将以下行取消注释,保存后重启终端。
1 2
| # If you come from bash you might have to change your $PATH. export PATH=$HOME/bin:/usr/local/bin:$PATH
|
然后在终端输入以下命令以重新安装即可。
1
| python3 -m pip install --upgrade --force-reinstall pip
|
下载加速
源地址如下。
1 2 3 4 5
| https://pypi.tuna.tsinghua.edu.cn/simple/ http://pypi.mirrors.ustc.edu.cn/simple/ http://mirrors.aliyun.com/pypi/simple/ https://pypi.mirrors.ustc.edu.cn/simple/ http://pypi.douban.com/simple/
|
暂时加速
1
| pip install [包名] -i [镜像源地址]
|
直接换源
1 2
| pip install pip -U pip config set global.index-url [镜像源地址]
|
相关包
Frida
到以下网站下载Frida的安装包并放到用户目录,为egg格式。
1
| https://pypi.org/project/frida/#files
|
打开终端并输入以下命令安装,其中路径为刚才下载的安装包。
常见问题
在终端输入以下命令即可。
1 2 3
| sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/ xcode-select --print-path // 输出/Applications/Xcode.app/Contents/Developer
|
App在Catalina下提示已损坏
在终端输入以下命令即可。
1 2
| // /Applications/xxxx.app换为所需App路径,推荐直接将app文件拖入终端 sudo xattr -d com.apple.quarantine /Applications/xxxx.app
|
因AppleGFXHDADriver重启
将SLE下的AppleGFXHDA.kext删除或更改后缀即可。
旧Mac电脑无法开启高分辨率
可使用mac-pixel-clock-patch-V2补丁,仓库如下。
1
| https://github.com/Floris497/mac-pixel-clock-patch-V2
|
参考教程
pyenv
1 2 3
| https://github.com/pyenv/pyenv https://github.com/pyenv/pyenv-installer https://github.com/jiansoung/issues-list/issues/13
|
为什么创建点下划线._文件,如何避免使用它们?
1
| https://qastack.cn/apple/14980/why-are-dot-underscore-_-files-created-and-how-can-i-avoid-them
|
ItChat 系列 0 - 初识 ItChat
1
| https://www.playpi.org/2019020701.html
|
Homebrew国内如何自动安装(国内地址)
1
| https://zhuanlan.zhihu.com/p/111014448
|
在Mac系统中如何显示和隐藏文件
1
| https://www.jianshu.com/p/a1c2495b02aa
|
如何删除GIT中的.DS_Store
1
| https://www.jianshu.com/p/fdaa8be7f6c3
|
Mac 重装系统教程(二):网络在线重装
1
| https://m.sohu.com/a/325579861_654244
|
OS X 默认字体的讨论与修改方法
1
| https://blog.royli.dev/2018/os-x-mo-ren-zi-ti-de-tao-lun-yu-xiu-gai-fang-fa-2d38abb1
|
这篇 iTerm2 + Oh My Zsh 教程手把手让你成为这条街最靓的仔
1
| https://segmentfault.com/a/1190000022813972
|
镜像快速安装Homebrew教程
1
| https://brew.idayer.com/
|
删除pip安装的所有软件包的最简单方法是什么?
1
| https://www.imooc.com/wenda/detail/605683
|
删除启动台(LaunchPad)残留的图标
1
| https://zhuanlan.zhihu.com/p/55866195
|
python - Warning: pip is being invoked by an old script wrapper - Stack Overflow
1
| https://stackoverflow.com/questions/60029215/warning-pip-is-being-invoked-by-an-old-script-wrapper
|
Mac terminal 清屏快捷键
1
| https://blog.csdn.net/u010164190/article/details/78622884
|