[工具教程]-27- macbook的基本操作以及常见问题处理

2024-03-07 09:07:33 浏览数 (1)

Mac-Plan

快捷键

  • 锁屏 : Control Command Q
  • 截图 : Shift Command 5
  • 刷新 : Command R
  • 行首 : Command 左键
  • 行末 : Command 右键
  • 输入Emoji 表情和颜文字 : Control Command space

启动项

代码语言:javascript复制
ls /Library/LaunchAgents

代理

代码语言:javascript复制
# 请根据自己的代理软件进行调整!!!!
export https_proxy=http://127.0.0.1:7890;export http_proxy=http://127.0.0.1:7890;export all_proxy=socks5://127.0.0.1:7890

权限

由于 macOS 默认情况下只允许运行可信任签名的应用,如果 macOS 阻止运行该软件,请打开 macOS 终端,在新建的终端 Shell 中输入:

代码语言:javascript复制
sudo spctl --master-disable

由于调用了sudo权限,你可能需要输入密码,会输出如下提示:

代码语言:javascript复制
Password:

此时你需要输入密码,在 Shell 中输入的密码是不可见的,输入完毕后请按回车键。

针对 “已损坏” 的解决办法

苹果系统有一个 GateKeeper 保护机制。

从互联网上下载来的文件,会被自动打上 com.apple.quarantine 标志,我们可以理解为 “免疫隔离”。

系统根据这个附加属性对这个文件作出限制。

随着版本不同,MacOS 对 com.apple.quarantine 的限制越来越严格,在较新 的 MacOS 中,会直接提示 “映像损坏” 或 “应用损坏” 这类很激进的策略。

我们可以通过手动移除该选项来解决此问题。

代码语言:javascript复制
sudo xattr -r -d com.apple.quarantine /Applications/xxxxxxxx.app

解锁文件夹

代码语言:javascript复制
chflags -R nouchg *

优化

减少程序坞的响应时间

代码语言:javascript复制
# 设置启动坞动画时间设置为 0.5 秒
defaults write com.apple.dock autohide-time-modifier -float 0.5 && killall Dock

# 设置启动坞响应时间最短
defaults write com.apple.dock autohide-delay -int 0 && killall Dock

# 恢复启动坞默认动画时间
defaults delete com.apple.dock autohide-time-modifier && killall Dock

# 恢复默认启动坞响应时间
defaults delete com.apple.Dock autohide-delay && killall Dock

左右光标移动速度

系统偏好设置 -> 键盘 -> 键盘

  • 按键重复:对应的是移动速度;
  • 重复前延迟:对应的是移动前的反应时间。

mac 下 sudo 用 touchid 代替密码输入

代码语言:javascript复制
sudo vim /etc/pam.d/sudo

在第二行添加
auth sufficient pam_tid.so

保存的时候可能要用 :wq!

来自文章: https://sixcolors.com/post/2020/11/quick-tip-enable-touch-id-for-sudo/


软件

Rosetta 2

代码语言:javascript复制
softwareupdate --install-rosetta

chrome

  • https://www.google.com/chrome/

clash

  • https://github.com/Fndroid/clash_for_windows_pkg/releases

homebrew

  • https://brew.sh/index_zh-cn
  • https://gitee.com/cunkai/HomebrewCN
代码语言:javascript复制
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/f0x/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

然后使用 brew install xxx 就可以安装应用了,也可以使用 brew uninstall xxx 卸载软件

nodejs

代码语言:javascript复制
brew install nodejs

# 按需给权限,可以不用这条
sudo chmod -R 777 /usr/local/lib/node_modules/

git

代码语言:javascript复制
brew install git

ffmpeg

代码语言:javascript复制
brew install ffmpeg

motrix

  • https://github.com/agalwood/Motrix
代码语言:javascript复制
brew update && brew install --cask motrix

腾讯柠檬清理

  • https://lemon.qq.com/

snipaste

  • https://zh.snipaste.com/

tabby

  • https://github.com/Eugeny/tabby

wgestures2

  • https://www.yingdev.com/projects/wgestures2#

vlc

  • https://www.videolan.org/index.zh.html

edge

  • https://www.microsoft.com/en-us/edge

Alfred

  • https://www.alfredapp.com/

code-server

  • https://github.com/coder/code-server
代码语言:javascript复制
brew install code-server
brew services start code-server
# Now visit http://127.0.0.1:8080. Your password is in ~/.config/code-server/config.yaml

python

默认自带 python2 和 python3

java

  • https://oracle.com/java/technologies/downloads/#java8-mac
  • https://www.azul.com/downloads/?os=macos&architecture=arm-64-bit

javafx

  • https://openjfx.io/
  • https://openjfx.cn/dl/
代码语言:javascript复制
export PATH_TO_FX=/Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/javafx-sdk-17.0.2/lib

go

代码语言:javascript复制
brew install go

php

先查询有哪些 php 的版本,M1 目前只支持部分版本

代码语言:javascript复制
brew search php

这里我安装 php7.3,参考 stackoverflow 的回答 https://stackoverflow.com/questions/70417377/error-php7-3-has-been-disabled-because-it-is-a-versioned-formula

代码语言:javascript复制
brew tap shivammathur/php
brew install shivammathur/php/php@7.3

安装完毕后应该就可以在 /opt/homebrew/etc/php/7.3/ 目录下看到 php 了

运行以下命令加入到环境变量中

代码语言:javascript复制
echo 'export PATH="/opt/homebrew/opt/php@7.3/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/php@7.3/sbin:$PATH"' >> ~/.zshrc

brew info php 可以查看我们安装的 php 信息

jenv

  • https://github.com/jenv/jenv
代码语言:javascript复制
brew install jenv

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc

# 根据自己安装的版本添加
# jenv add /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
# jenv add /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
# jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_351.jdk/Contents/Home
# jenv add /Library/Java/JavaVirtualMachines/jdk-11.0.14.jdk/Contents/Home
# jenv add /Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/Contents/Home
jenv versions
# jenv global 1.8
# jenv local 1.8

miniforge

  • https://github.com/conda-forge/miniforge
代码语言:javascript复制
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh
mv Miniforge3-MacOSX-arm64.sh ~/
cd
bash Miniforge3-MacOSX-arm64.sh

pyenv

代码语言:javascript复制
brew install pyenv

pyenv init
# 会提示你修改 ~/.zshrc 文件,复制进去即可

CotEditor

  • https://github.com/coteditor/CotEditor

nginx

代码语言:javascript复制
brew install nginx
brew info nginx

管理 nginx 运行状态

代码语言:javascript复制
# 开启
nginx

# 关闭
nginx -s stop
/opt/homebrew/opt/nginx/bin/nginx -s stop

默认 www 目录

代码语言:javascript复制
/opt/homebrew/var/www

配置文件所在目录

代码语言:javascript复制
/opt/homebrew/etc/nginx/

cloudflared

代码语言:javascript复制
brew install cloudflared

cmake

代码语言:javascript复制
brew install cmake

ip

代码语言:javascript复制
brew install iproute2mac

tiles

  • https://freemacsoft.net/tiles/

alt-tab-macos

  • https://github.com/lwouis/alt-tab-macos

espanso

  • https://github.com/espanso/espanso
  • https://espanso.org/docs/get-started/
代码语言:javascript复制
espanso path

一些依赖

libpq.5.dylib

搜索发现这个应该是 postgresql 相关功能依赖的文件

一种方法是直接安装 postgresql,不过我测试了没成功

代码语言:javascript复制
brew install postgresql

我在本地用 fzf 搜索发现 System/Volumes/Data/opt/homebrew/lib/libpq.5.dylib 路径有这个文件,那么复制一个好了,建立个软连接也行

代码语言:javascript复制
mkdir -p /usr/local/lib/
sudo cp /System/Volumes/Data/opt/homebrew/lib/libpq.5.dylib /usr/local/lib/libpq.5.dylib

参考

  • https://github.com/PostgresApp/PostgresApp/issues/83
  • https://blog.csdn.net/yutianyue126/article/details/106911948

libssl.1.1.dylib

代码语言:javascript复制
brew install openssl@1.1
sudo cp /opt/homebrew/opt/openssl@1.1/lib/libssl.1.1.dylib /usr/local/lib/libssl.1.1.dylib

参考

  • https://www.v2ex.com/t/666738
  • https://pavcreations.com/dyld-library-not-loaded-libssl-1-1-dylib-fix-on-macos/
  • https://stackoverflow.com/questions/59006602/dyld-library-not-loaded-usr-local-opt-openssl-lib-libssl-1-0-0-dylib

libcrypto.1.1.dylib

代码语言:javascript复制
brew install openssl@1.1
sudo cp /opt/homebrew/opt/openssl@1.1/lib/libcrypto.1.1.dylib /usr/local/lib/libcrypto.1.1.dylib

xcrun: error: invalid active developer path

代码语言:javascript复制
xcode-select --install

环境变量

和 linux 是一样的,比如装 maven ,下载解压放到 Library 下,添加环境变量

代码语言:javascript复制
export maven_HOME=/Library/apache-maven-3.8.4
export PATH=$PATH:$maven_HOME/bin

可以长期修改

代码语言:javascript复制
vim ~/.zshrc

   export maven_HOME=/Library/apache-maven-3.8.4
   export PATH=$PATH:$maven_HOME/bin

source ~/.zshrc
mvn -v

0 人点赞