Mac OS X 快捷键和使用技巧

参考

快捷键

常用全局快捷键

功能 快捷键 说明
显示桌面 F11 很有用,再按一下回归原状
平铺全部打开窗口 Ctrl + 即,打开 mission control
复制粘贴 Cmd + cCmd + v 标准的复制粘贴
剪切 Cmd + cCmd + option + v 有 option 就是剪切,不加就是普通拷贝
打开 emoji 表情窗口 Ctrl+Cmd+ Space 输入文字时使用
打开 Spotlight Ctrl+ Space 用于检索
切换输入法 Cmd+ Space  

窗口(任何程序窗口)

参考:Mac OS X窗口最小化方法的几个快捷键

功能 快捷键
向后切换窗口 Cmd+Tab
向前切换窗口 Cmd+Shift + Tab
最小化窗口(到 Dock) Cmd+M
恢复最小化的窗口 先用Cmd+Tab或者Cmd+Shift + Tab切换到你想要恢复的窗口处,然后松开除了Cmd之外的按键(依然按住Cmd),接着再按住Option,然后松开Cmd
切换窗口全屏状态 Ctrl + Cmd+F
关闭窗口 Cmd+W(不过通常彻底退出程序是 Cmd + Q)
新建标签 Cmd+T
新建窗口 Cmd+N
隐藏当前程序的所有窗口 Cmd+H

Finder

功能 快捷键
打开文件预览 Cmd+Shift+P
显示隐藏文件 Cmd+ Shift +.
拷贝文件或者文件夹路径 Cmd + Option + C(拷贝文件夹路径时,不要选中该路径下任何文件)
弹出地址栏(跳转) Cmd + Shift + G(结合拷贝路径快捷键使用就可以快速打开一个当前路径下的新的 Tab)
新建 Tab Cmd+T

截屏截图

参考:截屏快捷键官方文档

功能 快捷键
整个屏幕截图 Cmd+Shift+P
选择任意矩形截图 shift + cmd + 4
指定的窗口截图 shift + cmd + 4 后再按下 Space
截图后放在剪切板上而不保存 上面的快捷键再加上 Ctrl,上面的操作默认是截图后保存到桌面

常用命令

文件管理

按键/命令 描述
touch [file] 创建一个新文件
pwd 显示当前工作目录
.. 直接前进到上级目录(无需 cd)
rm [file] 移除文件, 例如 rm [file] [file]
rm -i [file] 移除时出现确认提示
rm -r [dir] 移除文件夹
rm -f [file] 强制移除
cp [file] [newfile / dir] 复制文件(到新文件或者文件夹)
mv [file] [newfile / dir] 移动文件(到新文件或者文件夹)
mkdir [dir] 创建新目录
mkdir -p [base]/[sub-dir] 创建子目录

管道 - 连接多个带有输出的命令

按键/命令 描述
more 按当前窗口大小显示(一个文件中的)内容
> [file] 输出至指定文件, 注意文件将会覆盖
>> [file] 在制定文件的末尾附加内容
< 从文件中读取内容

推荐的逼格工具

下面这两个知乎链接几乎涵盖了最常见的所有的 Mac 上的逼格工具:

oh-my-zsh

不多说了,没人不用吧。自行安装。通常推荐的主题组合是:oh-my-zsh + iTerm2 (or tmux)

几个相关设置

插件推荐

iTerm2

普通的 Terminal 的替代工具和多 tab 管理工具,非常好用。通常是和 zsh 结合使用。类似的还有 tmux。

功能 快捷键
切换不同窗口 Tab Cmd + 数字键
(同一个窗口中)右边开一个新的 Tab Cmd + D
(同一个窗口中)下边开一个新的 Tab Cmd + SHIFT + D
(同一个窗口中)切换不同的 Tab Cmd + Option + 方向键

终端工具 tmux

tmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理。在 macOS 下,使用 iTerm2 能应付绝大多数窗口管理的需求。tmux 相比 iTerm2 的优势在于:

  • iTerm2 的窗格切换快捷键(⌘⌥→)容易与其他软件全局快捷键冲突(例如 Spectacle 的窗口分割快捷键),tmux 由于存在前缀快捷键,所以不存在快捷键冲突问题;
  • tmux 可以在终端软件重启后通过命令行恢复上次的 session ,而终端软件则不行;
  • tmux 简洁优雅、订制性强,学会之后也能在 Linux 上使用,有助于逼格提升。

不过个人感觉,iTerm2 已经够我个人使用了。

生产力工具 Alfred

大名鼎鼎。

https://www.jianshu.com/p/19a704d29f91

Typora

非常、非常美观的一个 Markdown 编辑工具,支持 Mac, Linux 和 Windows 版本。唯一缺点是,暂时还没有移动版,当然也就没有多平台同步功能了。不过这不是大问题,它是读取本地的 Markdown 文件的,因此可以将本地文件放在任意网盘中就行。

在终端中使用 typora 命令:Use Typora from Shell or Cmd

快捷键

  • 切换 Markdown 预览和源码:Cmd + /

有用链接

  • 官方支持文档:https://support.typora.io/,里面有所有的使用方法链接;
  • 使用数学公式:http://support.typora.io/Math/#math-block-display-math

Themes 主题

全部的 Themes 链接:http://theme.typora.io/

推荐的主题有:

  • 默认的 Github 就灰常好用,简洁大方;
  • 另一个强烈推荐的主题是 Vue:http://theme.typora.io/theme/Vue/,目前我就在用。颜色分配更好看一些,排版也不错,不过默认字体有点小,在 Preferences -> Appearance 中设置 Custom 就行了。
  • 黑色主题推荐 Cobalt: http://theme.typora.io/theme/cobalt/
  • 纯中文主题推荐 Han:http://theme.typora.io/theme/Han/,基于 typo.css 开发。不过它的英文字体不喜欢,还没其它默认的主题好看,因此更适用于纯中文;

Theme 的安装方法:http://theme.typora.io/theme/cobalt/,其实就是下载 Theme 包然后解压,再放到 Theme 路径中就行了。

  • Download the zipped project package and open it.
  • Launch Typora and open Preferences from the app menu.
  • Go to the Appearance tab, and choose Open Theme Folder
  • Copy the cobalt.css file and cobalt folder from your zipped file to Typora theme directory.
  • Launch or restart Typora and choose Cobalt from the theme menu.

tree

用于查看文件夹的树状结构。直接用 brew 即可安装。可以用man tree查看它的用法帮助。几个常见用法:

  • tree:默认显示当前目录所有子文件夹的结构;
  • tree -L 1:只显示一级目录(就类似 ls 了);
  • tree -N:显示中文等其他的 Unicode 文字(默认中文等都是乱码)

kap

https://getkap.co/

Mac 的录屏工具,简单实用,支持导出 mp4, gif 等多种常见格式。

Wudao-dict

Wudao-dict

命令行词典,支持中英文查询。优点多多。

ShiftIt

平铺窗口工具,超级强烈推荐。Mac 不像 Ubuntu 一样自带快捷键可以平铺窗口。这个工具提供了非常多的快捷键以排列窗口。

fliqlo

https://fliqlo.com/#/screensaver

一个屏保工具,显示大字时间。

Powerlevel9k

OpenInTerminal

https://github.com/Ji4n1ng/OpenInTerminal/blob/master/Resources/README-Lite-zh.md

一个小程序,可以让你从 Finder 中的当前路径中打开 Terminal 或者 iTerm。这一类的工具有好几个,这个还是国内某个学生写的,小巧且好用。

OmniDiskSweeper

The Omni Group 开发的免费软件 OmniDiskSweeper, 用于查看系统中所有路径下的各种文件的空间占用情况,方便删除较大的文件,非常好用。

有用的库

ImageMagick

ImageMagick 官网:包含使用说明。

很强大的图片信息提取和简单处理,包含多个命令,例如转换图片格式,或者合并多个图片到一个 gif 等。常见命令:

convert input.png output.jpg # 转换格式
convert frame*.png output.gif # 将多张图片合成一个 gif

Cocoapods

参考:

  • 看一遍就会的CocoaPods的安装和使用教程
  • CocoaPods 的简介和原理:https://juejin.im/post/5ba8e3c95188255c581aacbd
  • 简单的安装和使用:https://www.jianshu.com/p/9c68c966a408
  • 如何删除:https://superuser.com/questions/686317/how-to-fully-uninstall-the-cocoapods-from-the-mac-machine

CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具。利用 CocoaPods,可以定义自己的依赖关系 (称作 pods),并且随着时间的变化,以及在整个开发环境中对第三方库的版本管理非常方便。

CocoaPods 背后的理念主要体现在两个方面。首先,在工程中引入第三方代码会涉及到许多内容。针对 Objective-C 初级开发者来说,工程文件的配置会让人很沮丧。在配置 build phases 和 linker flags 过程中,会引起许多人为因素的错误。CocoaPods 简化了这一切,它能够自动配置编译选项。

其次,通过 CocoaPods,可以很方便的查找到新的第三方库。当然,这并不是说你可以简单的将别人提供的库拿来拼凑成一个应用程序。它的真正作用是让你能够找到真正好用的库,以此来缩短我们的开发周期和提升软件的质量。

安装很简单:

sudo gem install cocoapods [-v 1.3.1]

可以指定版本,不指定版本时默认安装最新版。

virtualenv

一个主要用在 python 的虚拟环境的操作工具。

有关 virtualenvwrapper 的使用可以参考:python环境神器virtualenvwrapper安装与使用

mkvirtualenv test # 新建一个名为 test 的环境
mkvirtualenv test --python=python3 # 也可以指定环境
lsvirtualenv # 列出全部环境
workon test # 进入该环境
deactivate # 退出环境
rmvirtualenv test # 移除该环境	

各种小技巧和常见问题

保存 Safari 里正在播放的视频

$ su
# cd /private/var/folders
# ls
nk zz
# cd nk
# ls
zy3770994vqg83xvmbc9pd0m0000gn
# cd zy3770994vqg83xvmbc9pd0m0000gn/T
# open .

然后复制里面叫 FlashTmp.xxx 的文件,改名为 FlashTmp.flv。(操作过程中保持视频在播放状态)

安装 mpv 没有图形界面

使用 brew options mpv 可以看到有个 --with-bundle 是安装时创建 .app 文件。

brew install mpv --with-bundle
brew linkapps mpv

oh-my-zsh 中修改主题添加全路径显示

oh-my-zsh 默认的 robbyrussel 本身已经十分简洁,一些小 tweak 就能变得十分高大上。然而,robbyrussel 主题有一个很令人难受的痛点,在于它并不能显示全路径,只能显示当前所在的文件夹名,如现在处于路径 /home/.../src 中,此主题就只是显示最后路径,即src,带来了一些不方便。

可以通过如下的简单修改使得它能够显示全路径:

  • 用 IDE 打开 ~/.oh-my-zsh/themes/robbyrussell.zsh-theme 文件;
  • 修改 PROMPT 一行中间附近的 %c 字样为 %~,这样不但会显示全路径,而且对用户的目录 /home/user 会显示 ~/,更符合习惯。

Mac 触摸板和外接鼠标的滚动方向分开设置

参考:macbook触摸板和鼠标的滚动方向分开设置

Mac 的外接鼠标的滚轮操作默认是和触摸板相同方向的,但是正好和用户习惯相反。并且 Mac OSX 系统居然没有地方可以修改鼠标滚轮方向。此时可以使用一个叫做 Scroll Reserver 的小软件。参考上面链接,下载后即可使用。不过第一次会提示你修改该软件的 Accessibility,记得将其设置成 Allow this app to control your computer,否则根本无法打开。打开后,该软件默认隐藏,从屏幕右上方控制栏中找到该软件,打开后即可。通常是勾选“Reverse Mouse”,但是不要选“Reverse Trackpad”就行了。

设置外接键盘中的 Cmd 按键和内接键盘一样

参考:Swap CMD and Alt only on external keyboard

很多外接的 Windows 类型键盘中并没有 Cmd 按键,此时 Mac 经常会默认键盘上的 Windows 按键(就是夹在 CtrlAlt 中间的那个按键)是 Cmd 按键。此时就有问题了:CmdAlt 按键和 Mac 的键盘反过来了,用起来很不方便。可以设置交换这两个按键以符合我们的习惯。找到 System Preferences → Keyboard,打开 Modifier Keys,先选中你的外接键盘,然后交换默认的 Command 和 Option Key 这两个按键即可。

有外接电源时,盖上盖子不休眠(don’t sleep after closing lid)

很简单,在 System Preferences → Energy Saver 中,在 Power Adapter,取消选择 Put hard disks to sleep when possible。

像 Ubuntu 一样使用快捷键平铺窗口(Split Views Like Ubuntu using Shortcuts)

Mac 并不支持类似 Ubuntu 中的平铺窗口的快捷键,使用起来很痛苦。这时又要借助神器软件了,这次的小软件是 ShiftIt(官方链接)。安装很容易,该链接中还有快捷键介绍,使用也很方便。最后不妨将其加到系统启动列表中。

Chrome 中回到上一个 Tab

Switching back to last used tab on Chrome

Chrome 默认不支持回到上一个 Tab 的快捷键,只有像 Ctrl + ` 这种快捷键来遍历全部的 Tabs。如果要回到上一个刚刚访问的 Tab,一种方法是,可以安装一个插件:Recent Tabs。不过安装完成后,还要设置一下快捷键。到 Chrome -> Settings –> More Tools –> Extensions,然后点击左上角 Extensions 的标签栏,选中 Keyboard Shortcuts,此时就会出现让你设置“跳回上一个 Tab”的快捷键了。

预览图片时,使用方向键预览其它的图片

非常简单:不要双击图片来打开预览(Preview),而是使用空格键打开。此后就能使用所有方向键预览其它同一个文件夹中的图片了。

操作(解压缩)7z 文件

You can install p7zip with Homebrew. So

% brew install p7zip
% 7za x myfiles.7z

iTerm2 中使用快捷键跳跃性移动光标

参考:

iTerm - going one word backwards and forwards

iTerm2 默认情况下居然不支持光标跳跃移动,而是只能一个字母一个字母移动。此时,如果你敲了一行很长的命令然后想要修改前面的某个位置,只能按多次方向键一个一个向前挪动光标,忒不方便了。然而,普通的 Ubuntu 中的终端,甚至 VS Code 中内嵌的终端都支持快捷键跳跃性移动光标,例如一次跳过一个单词之类的。其实,iTerm2 中也可以设置成这样:

  • Go to Preferences… > Profiles > Keys (not Preferences… > Keys)
  • Press Presets…
  • Select Natural Text Editing

之后就可以通过和 VS Code 中的终端一样的快捷键了。例如:

  • Option + 回到上一个单词;
  • Option + 前往下一个单词;
  • Cmd + 前往行首;
  • Option + delete 删除一个单词;
  • Cmd + delete 删除一整行。这个很有用,因为 iTerm2 默认也不支持清除一整行。

外接显示器选择自定义分辨率

https://support.apple.com/guide/mac-help/change-your-displays-resolution-mchl86d72b76/mac

在 System Preferences –> Display 中找到显示器后,默认的 scaled 的分辨率就只有比较笼统的五种。此时按住 Option 键再选择,就会出现全部可选的详细分辨率列表了。

Mac 和 Windows(任意其它系统)之间分享文件

各大系统中其实都自带有分享文件的功能,而且很好用,有时候比使用网盘要快很多。建立完分享文件夹后,将来可以从任意一个系统向另一个系统分享文件,非常方便,速度也很快。

这个视频连接详细讲述了 Mac 和 Windows 10 之间分享文件的方法:https://www.youtube.com/watch?v=W6GWr9kjQ9Q。

这里还有来自 Apple 官方的补充:https://support.apple.com/zh-cn/guide/mac-help/mchlp1657/mac

Search

    Table of Contents