Mac - meetbill/op_practice_book GitHub Wiki

初始化

  • 安装 Vim-ide
  • 设置终端启动界面样式和默认样式
  • 安装 Virtual box
    • 安装虚拟机后,安装驱动以自动适配分辨率【打开虚拟机】,设备 (D) -> 安装增强功能 (I)
  • 安装 OmniGraffle 流程图
    • OmniGraffle7 注册码 Name: Appked SN: MFWG-GHEB-HYTW-CGHT-CSXU-QCNC-SXU
  • 配置 rz,sz
    • 其一,不需要输入很长的命令和密码,直接使用 rz,sz 加文件名,就能实现文件的收发。速度还很快。
    • 其二,在中转了一台主机时,要在目标主机和本地主机之类,要传送文件,scp 相当的麻烦,需要输入多次命令用户密码。但 sz 直接可以穿透。

iTerm2 颜色配置

步骤

1 将下面内容写入到 ~/.bash_profile 文件中

export PS1='[[\033[01;32m\][u@\h\[\033[00m\]:[[\033[01;36m\][w\[\033[00m\]\$'
# ls 下面配置可以登录远程服务器也生效
CLICOLOR=1
LSCOLORS=gxfxcxdxbxegedabagacad
alias ls="ls -G"
export TERM=xterm-color

2 重新读取配置文件

source ~/.bash_profile

说明

LSCOLORS 是用来设置当 CLICOLOR 被启用后,各种文件类型的颜色。LSCOLORS 的值中每两个字母为一组,分别设置某个文件类型的文字颜色和背景颜色。LSCOLORS 中一共 11 组颜色设置,按照先后顺序,分别对以下的文件类型进行设置:

  • directory
  • symbolic link
  • socket
  • pipe
  • executable
  • block special
  • character special
  • executable with setuid bit set
  • executable with setgid bit set
  • directory writable to others, with sticky bit
  • directory writable to others, without sticky bit

LSCOLORS 中,字母代表的颜色如下:

  • a 黑色
  • b 红色
  • c 绿色
  • d 棕色
  • e 蓝色
  • f 洋红色
  • g 青色
  • h 浅灰色
  • A 黑色粗体
  • B 红色粗体
  • C 绿色粗体
  • D 棕色粗体
  • E 蓝色粗体
  • F 洋红色粗体
  • G 青色粗体
  • H 浅灰色粗体
  • x 系统默认颜色

ssh 配置

连接外接的普通键盘时,”Windows” 键会被设置成 “Command(⌘)” 键,即,日常要进行复制粘贴时,需要使用 “Windows” 键进行使用

保持

用终端登录远程开发机 coding,应该是大多数程序猿年复一年的工作,但悲剧的是终端会你跟美女测试聊天的一瞬间断开了,所幸的是 ssh 提供了连接保持 命令 ServerAliveInterval,只需要新建文件~/.ssh/config 并输入如下命令即可:

ServerAliveInterval 60

这样 ssh 会每 60 秒发送一个 KeepAlive 请求,保证终端不会因为超时空闲而断开连接。

重用

如果你用 mac 本的话,很不方便的是没有 clone 功能,新窗口时需要重新输入繁琐的用户名和密码,对于经常排查线上问题的程序猿来说是一件很悲催的事 情,同样幸运的是 ssh 提供了连接重用功能,这个功能的原理很简单,开一个 ssh 连接放在后台,以后再需要用 ssh 到同样的远程主机时,ssh 会直接用这 个连接的 socket 文件,不再创建新的连接了,同理,也不需要进行用户身份验证了,是不是很 happy,只需要新建文件~/.ssh/config 并输 入如下命令即可:

Host *
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p

保存后,在终端 ssh 登录远程主机后,会在~/.ssh 下留下很多 master-username@hostname 文件,道理不言而喻。

文件夹配置文件自动排列

打开 finder,按上面这些按钮中【像齿轮的那个】,拉出菜单,选【查看显示选项】,里面可以选择【排列方式】。选好后,点最下面的【用作默认】

日常命令

sed

今天用 Mac 用 sed 写几个文本替换,用 -i 参数原地替换,发现不行。

man sed发现 -i 需要带一个字符串,用来备份源文件,这个字符串加在源文件名后面组成备份文件名。

如果这个字符串长度为 0,就是说是个空串,那么不备份。

sed -i "bs" 's/Atl/Dog/g' example.txt

这样会生成一个 example.txtbs 的备份文件。 如果不备份,直接给个空

sed -i "" 's/Atl/Dog/g' example.txt

但是,不能省略。

top

在 Mac 系统下,是不能使用传统 Linux 的 P、M 来排序的。在运行的 top 命令中,先输入 o, 然后再输入对应的列即可进行排序

日常问题处理

outlook for mac 断电后重启,再次打开闪退

按住键盘上的 option,然后点 outlook ,修复 database 就可以了

网页上复制内容拷贝到 PPT 中

“编辑”—“选择性粘贴”—“无格式文本”

Mac 上压缩的包在 其他操作系统上解压时提示 Ignoring unknown

原因:Mac OS X 使用的是 BSD tar,它会产生一些 GNU tar 无法识别的额外的信息,常见的 linux 发行版用的是 GNU tar。

mac 下 ppt 打开后没有显示怎么办

  • 1,打开 PPT 文件,如果看不见 PPT 界面,点击 PPT,桌面显示 powerpoint 窗口
  • 2,在界面上边应该会显示 powerpoint 控制条,在窗口选项点击缩放窗口,
  • 3,恭喜你,PPT 文件出来了

iTerm2 的耗电高

如果发现 iTerm2 的耗电高,那么有可能是本地终端的某个程序在运行,即使关掉终端也在运行,导致耗电较高,可以进行 top 下,及时发现异常进程

快捷键

切换屏幕

Control + 箭头 → ← 三指左右滑动

粘贴到剪切板

  • cat ~/.ssh/id_rsa.pub | pbcopy

Python 环境

安装 pip 方式1(有时候会失败)

安装好 Python 环境的本地都有 easy_install 执行程序,我们这里主要使用 easy_install 来安装。

sudo easy_install pip

可以通过 pip list 查看当前安装的包

安装 pip 方式2

https://stackoverflow.com/questions/17271319/how-do-i-install-pip-on-macos-or-os-x

> * curl  https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
> * python get-pip.py

重新打开个终端,如果发现本地没有 pip 命令,使用方式再执行下

sudo easy_install pip

安装 pytest/mock/autopep8

sudo pip install pytest
sudo pip install mock
sudo pip install autopep8

如果没有 pytest 命令,则使用 python -m pytest

autopep8

autopep8.py --aggressive --in-place __init__.py

git tips

# key
$ ssh-keygen -t rsa -C "[email protected]"
$ cat .ssh/id_rsa.pub


cd git_repo(替换为项目名字)
git remote add ${PWD##*/} [email protected]:meetbill/${PWD##*/}.git
git push -u ${PWD##*/} master

安装 brew

国内源

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