Mac 键盘快捷键

你可以按下某些组合键来实现通常需要鼠标、触控板或其他输入设备才能完成的操作。

要使用键盘快捷键,请按住一个或多个修饰键,然后按快捷键的最后一个键。例如,要使用 Command-C(拷贝),请按住 Command 键并按 C 键,然后同时松开这两个键。Mac 菜单和键盘通常会使用符号来表示某些按键,其中包括以下修饰键:

  • Command(或 Cmd)⌘
  • Option(或 Alt)⌥
  • Caps Lock ⇪
  • Shift ⇧
  • Control(或 Ctrl)⌃
  • Fn

在 Windows PC 专用键盘上,请用 Alt 键代替 Option 键,用 Windows 标志键代替 Command 键。

Apple 键盘上的某些按键具有特殊符号和功能,例如用来控制显示屏亮度 、键盘亮度 等。如果你的键盘上没有这些功能,你也许可以通过创建自己的键盘快捷键来实现其中的一些功能。要将这些键用作 F1、F2、F3 或其他标准功能键,请将它们与 Fn 键组合使用

mac 常用快捷键

剪切、拷贝、粘贴和其他常用快捷键

快捷键描述
Command-X剪切所选项并拷贝到剪贴板。
Command-C将所选项拷贝到剪贴板。这同样适用于“访达”中的文件。
Command-V将剪贴板的内容粘贴到当前文稿或 App 中。这同样适用于“访达”中的文件。
Command-Z撤销上一个命令。随后你可以按 Shift-Command-Z 来重做,从而反向执行撤销命令。在某些 App 中,你可以撤销和重做多个命令。
Command-A全选各项。
Command-F查找文稿中的项目或打开“查找”窗口。
Command-G再次查找:查找之前所找到项目出现的下一个位置。要查找出现的上一个位置,请按 Shift-Command-G。
Command-H将最前面的窗口最小化至“程序坞”。要最小化最前面的 App 的所有窗口,请按 Option-Command-M。
Command-O打开所选项,或打开一个对话框以选择要打开的文件。
Command-P打印当前文稿。
Command-S存储当前文稿。
Command-T打开新标签页。
Command-W关闭最前面的窗口。要关闭 App 的所有窗口,请按下 Option-Command-W。
Option-Command-Esc强制退出 App。
Command-空格键显示或隐藏“聚焦”搜索栏。要从“访达”窗口执行“聚焦”搜索,请按 Command–Option–空格键。
Control-Command-空格键显示字符检视器,你可以从中选择表情符号和其他符号。
Control-Command-F全屏使用 App(如果 App 支持)。
Command-Tab在打开的 App 中切换到下一个最近使用的 App。
Command-重音符 (·)在你当前所用 App 的各个窗口之间切换。(第二个按键上的字符因键盘而异,通常是在 Tab 键上方,数字 1 的左侧。)
Shift-Command-5在 macOS Mojave 或更高版本中,拍摄截屏或录制屏幕。也可以使用 Shift-Command-3 或 Shift-Command-4 来拍摄截屏。进一步了解截屏。
Shift-Command-N在“访达”中创建一个新文件夹。
Command-逗号 (,)打开最前面的 App 的偏好设置。
Command-shift-A打开应用程序界面!

睡眠、退出登录和关机快捷键

在这些快捷键中,你可能需要按住其中一些快捷键稍长时间。这样有助于避免无意中使用了这些快捷键。

快捷键描述
电源按钮按下可将 Mac 开机或将 Mac 从睡眠状态唤醒。按住这个按钮 1.5 秒可使 Mac 进入睡眠状态*。继续按住则会强制 Mac 关机。
Option-Command-电源按钮* 或 Option-Command-介质推出键将 Mac 置于睡眠状态。
Control-Shift-电源按钮* 或 Control-Shift-介质推出键将显示器置于睡眠状态。
Control-Command-介质推出键退出所有 App,然后重新启动 Mac。如果任何打开的文稿有未存储的更改,系统会询问你要不要存储这些更改。
Control-Option-Command-电源按钮* 或 Control-Option-Command-介质推出键退出所有 App,然后将 Mac 关机。如果任何打开的文稿有未存储的更改,系统会询问你要不要存储这些更改。
Control-Command-Q立即锁定屏幕。
Shift-Command-Q退出登录你的 macOS 用户帐户。系统将提示你确认。要在不确认的情况下立即退出登录,请按下 Option-Shift-Command-Q。

访达和系统快捷键

快捷键描述
Command-D复制所选文件。
Command-E推出所选磁盘或宗卷。
Command-F在“访达”窗口中开始“聚焦”搜索。
Command-I显示所选文件的“显示简介”窗口。
Command-R(1) 如果在“访达”中选择了某个替身:显示所选替身对应的原始文件。(2) 在某些 App(如“日历”或 Safari 浏览器)中,刷新或重新载入页面。(3) 在“软件更新”中,再次检查有没有软件更新。
Shift-Command-C打开“电脑”窗口。
Shift-Command-D打开“桌面”窗口。
Shift-Command-F打开“最近使用”窗口,其中会显示你最近查看或更改过的所有文件。
Shift-Command-G打开“前往文件夹”窗口。
Shift-Command-H打开当前 macOS 用户帐户的个人文件夹。
Shift-Command-I打开 iCloud 云盘。
Shift-Command-K打开“网络”窗口。
Option-Command-L打开“下载”文件夹。
Shift-Command-N新建文件夹。
Shift-Command-.开启显示隐藏文件,再次点击后可再次隐藏 显示文件!
Shift-Command-O打开“文稿”文件夹。
Shift-Command-P在“访达”窗口中显示或隐藏预览面板。
Shift-Command-R打开“隔空投送”窗口。
Shift-Command-T显示或隐藏“访达”窗口中的标签页栏。
Ctrl-Shift-Command-T将所选的“访达”项目添加到“程序坞” (OS X Mavericks 或更高版本)
Shift-Command-U打开“实用工具”文件夹。
Option-Command-D显示或隐藏“程序坞”。
Control-Command-T将所选项添加到边栏(OS X Mavericks 或更高版本)
Option-Command-P隐藏或显示“访达”窗口中的路径栏。
Option-Command-S隐藏或显示“访达”窗口中的边栏。
Command–斜线 (/)隐藏或显示“访达”窗口中的状态栏。
Command-J显示“显示”选项。
Command-K打开“连接服务器”窗口。
Command-N打开一个新的“访达”窗口。
Option-Command-N新建智能文件夹。
Command-Y使用“快速查看”预览所选文件。
Option-Command-Y显示所选文件的快速查看幻灯片显示。
Command-1以图标方式显示“访达”窗口中的项目。
Command-2以列表方式显示“访达”窗口中的项目。
Command-3以分栏方式显示“访达”窗口中的项目。
Command-4以画廊方式显示“访达”窗口中的项目。
Command-左中括号 ([)前往上一个文件夹。
Command-右中括号 (])前往下一个文件夹。
Command-上箭头打开包含当前文件夹的文件夹。
Command-Control-上箭头在新窗口中打开包含当前文件夹的文件夹。
Command-Delete将所选项移到废纸篓。
Shift-Command-Delete清倒废纸篓。
Option-Shift-Command-Delete清倒废纸篓而不显示确认对话框。
Command-调低亮度当 Mac 连接到多台显示器时,打开或关闭视频镜像功能。
Control-下箭头:显示最前面的 App 的所有窗口。
Command-调度中心显示桌面。

mac 常用命令

目录操作

命令描述示例
mkdir创建一个目录mkdir dirname
rmdir删除一个目录rmdir dirname
mvdir移动或重命名一个目录mvdir dir1 dir2
cd改变当前目录cd dirname
pwd显示当前目录的路径名pwd
ls显示当前目录的内容ls -la
dircmp比较两个目录的内容dircmp dir1 dir2

文件操作

命令描述示例
cat显示或连接文件cat filename
pg分页格式化显示文件内容pg filename
more分屏显示文件内容more filename
od显示非文本文件的内容od filename
cp复制文件或目录cp file1 file2
rm删除文件或目录rm filename
mv改变文件名或所在目录mv file1 file2
ln联接文件ln -s file1 file2
find使用匹配表达式查找文件find . -name “*.c” -print
file显示文件类型file filename
open使用默认的程序打开文件open filename (open . 打开当前目录)

选择操作

命令描述示例
head显示文件的最初几行head -20 filename
tail显示文件的最后几行tail -15 filename
cut显示文件每行中的某些域cut -f1,7 -d: /etc/passwd
colrm从标准输入中删除若干列colrm 8 20 file2
paste横向连接文件paste file1 file2
diff比较并显示两个文件的差异diff file1 file2
grep在文件中按模式查找grep “^[a-zA-Z]” filename
awk在文件中查找并处理模式awk ‘{print 111}’ filename
sort排序或归并文件sort -d -f -u file1
uniq去掉文件中的重复行uniq file1 file2
comm显示两有序文件的公共和非公共行comm file1 file2
wc统计文件的字符数、词数和行数wc filename
nl给文件加上行号nl file1 >file2

安全操作

命令描述示例
passwd修改用户密码passwd
chmod改变文件或目录的权限chmod ug+x filename
umask定义创建文件的权限掩码umask 027
chown改变文件或目录的属主chown newowner filename
chgrp改变文件或目录的所属组chgrp staff filename
xlock给终端上锁xlock -remote

编辑操作

命令描述示例
make维护可执行程序的最新版本make
touch更新文件的访问和修改时间touch -m 05202400 filename
dbx命令行界面调试工具dbx a.out
xde图形用户界面调试工具xde a.out

进程操作

命令描述示例
ps显示进程当前状态ps u
kill终止进程kill -9 30142
nice改变待执行命令的优先级nice cc -c *.c
renice改变已运行进程的优先级renice +20 32768

网络与通信操作

命令描述示例
telnet远程登录telnet http://www.macwk.com
rlogin远程登录rlogin hostname -l username
rsh在远程主机执行指定命令rsh f01n03 date
ftp在本地主机与远程主机之间传输文件ftp http://ftp.macwk.com
rcp在本地主机与远程主机之间复制文件rcp file1 host1:file2
ping给一个网络主机发送回应请求ping http://www.macwk.com
mail阅读和发送电子邮件mail
write给另一用户发送报文write username pts/1
mesg允许或拒绝接收报文mesg n

其它命令

命令描述示例
uname显示操作系统的有关信息uname -a
clear清除屏幕或窗口内容clear
env显示当前所有设置过的环境变量env
who列出当前登录的所有用户who
whoami显示当前正进行操作的用户名whoami
tty显示终端或伪终端的名称tty
stty显示或重置控制键定义stty -a
du查询磁盘使用情况du -k subdir
df显示文件系统的总空间和可用空间df /tmp
w显示当前系统活动的总信息w
lsof查看端口号sudo lsof -i:80

homeBrew 安装

Homebrew是一款包管理工具,目前支持macOSlinux系统。主要有四个部分组成: brew、homebrew-core 、homebrew-cask、homebrew-bottles

安装

mac端安装brew的方法:只需要打开终端,输入以下代码即可

1
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

但由于某些国内原因,会禁止翻墙至github,会提示以下错误:

1
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

国内针对以上问题,下面提供一种在线安装brew的方法,根据个人需求在终端输入相应的代码:

  1. 完整版安装代码

    1
    /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
  2. 极速版安装代码

    1
    /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" speed
  3. 卸载脚本

    1
    /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"
  4. 安装完成之后,需要运行以下代码进行查看:

    1
    2
    3
    4
    5
    6
    brew --version

    Homebrew 3.1.7-42-gd45832b
    Homebrew/homebrew-core (git revision 09d1a8b385; last commit 2021-05-15)
    Homebrew/homebrew-cask (git revision c1dad4a5cf; last commit 2021-05-15)
    qiuxiannv@qiuxiannvdeMBP ~ %

卸载

1
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"

常用命令

安装软件

1
2
3
brew install node #默认安装最新版
brew install node@14.16.8 #安装指定版本
brew switch node 16.0.0 #切换版本

更新软件

1
brew upgrade name #更新安装过的软件(如果不加软件名,就更新所有可以更新的软件)

卸载软件

1
brew uninstall node #卸载node

服务相关

1
2
3
4
5
brew services list #获取services列表
brew services start/stop/restart #serverName
brew services start mysql #启动mysql服务
brew services restart mysql #重启mysql服务
brew services stop mysql #停止mysql服务

其他常用命令

1
2
3
4
5
6
7
8
9
brew config #查看brew配置
brew info node #查看node安装信息
brew list #查看已安装软件
brew list --versions #查看已安装软件版本号
brew search node #搜索可用node相关软件
brew update #brew自身更新
brew cleanup #清除下载的缓存
brew doctor #诊断brew,并给出修复命令
brew update-reset #更新到最新版本

相关问题

mac 升级后使用 brew 报错

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
brew install subversion
Running `brew update --auto-update`...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core and homebrew/cask).
==> New Formulae
bandicoot gossip mtbl python-tk@3.12
bashunit helidon netlistsvg python@3.12
biome incus numbat qalculate-qt
blake3 iocextract onionprobe scoutsuite
bozohttpd jupyter-r opentofu smlfmt
build2 karmadactl orcania sqlsmith
caracal ldeep orogene squiid
cloudsplaining libdicom postgresql@16 tailwindcss
colmap libimobiledevice-glue pter trafilatura
dezoomify-rs libmapper python-argcomplete uffizzi
dovi_tool llvm@16 python-gdbm@3.12 web-ext
ggshield mentat python-psutil wormhole-william
ghc@9.4 modsecurity python-setuptools yder
==> New Casks
akuity dropbox-dash low-profile reqable spundle
ava dropshelf meld-studio routine telegram-a
batteryboi ecodms-client modrinth rustrover to-audio-converter
chainner expo-orbit mutedeck sf twelite-stage
clinq finbar muyu songkong wetype
cloudnet hp-easy-admin paulxstretch space-capsule
devtunnel kuaitie playdate-mirror spacedrive

You have 11 outdated formulae installed.

Error: unknown or unsupported macOS version: :dunno

处理方案

升级 brew 到最新版本

1
brew update-reset

环境变量配置

macOS 下环境变量的配置文件

1
2
3
4
5
6
a. /etc/paths 
b. /etc/profile
c. ~/.bash_profile
d. ~/.bash_login
e. ~/.profile
f. ~/.bashrc

/etc/profile/etc/paths系统级别的配置文件,后面几个是用户级的配置文件

文件加载顺序:

系统启动时会按上面罗列的配置文件从上到下的顺序加载。

但是,如果 ~/.bash_profile 文件存在,那么 ~/.bash_login~/.profile~/.bashrc 会被忽略,如果不存在 ~/.bash_profile 文件,才会按顺序读取后面的文件。另外,~/.bashrc 文件又比较特殊,这个文件是在 bash shell 打开时才加载的,并不是系统启动后就加载的

查看 macOS 全部环境变量

输入命令 export,查看全部的环境变量:

1
2
3
4
5
6
[~]$ export
HOME=/Users/liaowenxiong
HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home
LANG=zh_CN.UTF-8
LESS=-R

设置系统环境变量

系统环境变量在 /etc/profile 文件中配置,编辑该文件需要 root 权限:

1
sudo vim /etc/profile

新增环境变量 JAVA_HOMECLASS_PATH,内容如下:

1
2
3
4
5
6
7
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home"

export JAVA_HOME

CLASS_PATH="$JAVA_HOME/lib"

PATH=".:.$PATH:$JAVA_HOME/bin"

要想马上生效,输入下面的命令:

1
source /etc/profile

查看环境变量 JAVA_HOME 的值:

1
echo $JAVA_HOME

设置用户环境变量

用户环境变量可以在 ~/.bash_profile 文件内配置。

1
vim ~/.bash_profile

或者

1
open -e ~/.bash_profile

如果不存在 ~/.bash_profile 文件,这需要自己创建该文件,在终端输入:

1
touch ~/.bash_profile

配置内容可以按这样的格式写:

1
2
3
4
5
6
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

也可以是这样的格式写:

1
2
3
4
5
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
export ANDROID_HOME=/Library/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools/
export PATH=$PATH:/usr/local/bin:/usr/local/sbin:${PATH}

需要注意的是,上面的设置默认使用bash,如果你在Mac上使用的是zsh等shell工具,需要再做如下配置,来达到环境变量设置的永久生效。

1
vim ~/.zshrc

在开头添加

1
2
3
if [ -f ~/.bash_profile ]; then
source ~/.bash_profile
fi

使用下面的命令使之立即生效

1
source ~/.zshrc

原因解释如下

bash的配置文件是.bashrc, zsh的配置文件是.zshrc,当你使用zsh作为默认shell工具的时候,它启动时并不会加载bash的这两个配置文件.bashrc和.bash_profile,而只会加载自己的配置文件.zshrc,为了让我们的配置文件生效,只能在.zshrc中添加上面的配置

如果不做上述设置,你就会发现,只有当你每次source ~/.bash_profile后才会生效,下次重新打开zsh窗口,还是不生效。

前端环境搭建

Node环境搭建

安装NVMNode版本工具

1
brew install nvm

查看 nvm 是否安装成功

1
2
3
4
5
6
7
8
9
10
nvm --version

Running version 1.1.9.

Usage:

nvm arch : Show if node is running in 32 or 64 bit mode.
nvm current : Display active version.
nvm install <version> [arch] : The version can be a specific version, "latest" for the latest current version, or "lts" for the
most recent LTS version. Optionally specify whether to install the 32 or 64 bit version

安装Node工具

1
2
3
4
5
nvm install node@14.19.2
# 安装指定版本的node
nvm install v10.4.0
# 安装最新稳定版 node
nvm install stable

查看是否安装成功

1
2
3
4
5
6
7
nvm list

C:\Users\MiaoJw>nvm list

16.16.0
* 14.19.2 (Currently using 64-bit executable)
10.16.0

切换node版本

1
nvm use v14.19.2

查看当前版本

1
nvm current

指定默认的node版本

1
nvm alias default v14.19.2

卸载node版本

1
nvm uninstall 14.17.0

安装Git

安装

使用Homebrew安装

1
2
3
4
5
6
7
8
9
10
11
# 搜索git
brew search git

# 安装git
brew install git

# 更新git
brew upgrade git

# 卸载git
brew uninstall git

查看版本

1
git --version

安装 svn

安装

1
brew install svn

查看是否安装成功

1
brew list
1
2
3
4
5
6
7
8
➜  ~ brew list
==> Formulae
apr dart icu4c nvm ruby xz
apr-util fvm libnghttp2 openssl@1.1 sqlite
brotli gdbm libuv openssl@3 subversion
c-ares gettext libyaml pcre2 tcl-tk
ca-certificates git lz4 python@3.9 telnet
cocoapods git-gui mpdecimal readline utf8proc

列表中出现subversion这个算是安装成功!

查看svn用法

1
svn help
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
usage: svn <subcommand> [options] [args]
Subversion command-line client.
Type 'svn help <subcommand>' for help on a specific subcommand.
Type 'svn --version' to see the program version and RA modules,
'svn --version --verbose' to see dependency versions as well,
'svn --version --quiet' to see just the version number.

Most subcommands take file and/or directory arguments, recursing
on the directories. If no arguments are supplied to such a
command, it recurses on the current directory (inclusive) by default.

Available subcommands:
add
auth
blame (praise, annotate, ann)
cat
changelist (cl)
checkout (co)
cleanup
commit (ci)
copy (cp)
delete (del, remove, rm)
diff (di)
export
help (?, h)
import
info
list (ls)
lock
log
merge
mergeinfo
mkdir
move (mv, rename, ren)
patch
propdel (pdel, pd)
propedit (pedit, pe)
propget (pget, pg)
proplist (plist, pl)
propset (pset, ps)
relocate
resolve
resolved
revert
status (stat, st)
switch (sw)
unlock
update (up)
upgrade

Subversion 是版本控制工具。
欲取得详细资料,请参阅 http://subversion.apache.org/

常用命令

获取远程代码
1
svn checkout  https://192.168.1.15/svn/TSSS/xxx/xxx/
添加本地代码
1
svn add
提交代码
1
svn commit -m 'First Commit'

svn add 然后 svn commit -m 'First Commit'

获取最新代码
1
svn update
删除在服务器上的文件
1
svn delete svn://localhost/main -m "删除了main文件"
查看svn服务器信息
1
svn info
撤销本地未提交的所有操作
1
svn revert --recursive .