# mac 使用中需要的相关小知识
mac 使用中需要的相关小知识
mac的备份与还原
2017/06/16 Chenxin
使用 迁移助理.
1.同时开启2台mac的迁移助理,实时迁移.这样可以通过网络进行.能够将除浏览器,邮件的密码外的东西,全部迁移.推荐方式(可以通过wifi或者雷电接口来拷贝数据).
2.使用移动硬盘.先将老mac上的文件,通过time cachine进行备份.然后在新电脑上,做恢复.
mac重装系统
2019/11/29
参考
https://www.jianshu.com/p/d7cd6066b39e
https://www.iplaysoft.com/macos-usb-install-drive.html
1.下载系统dmg文件
2.mac打开dmg,并安装.安装到application里,供制作U盘的时候输入的指令调用.
3.处理U盘数据(抹掉数据) 使用"磁盘工具"(设置chen-u为U盘名称)
4.制作U盘镜像
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/chen-u --applicationpath /Applications/Install\ macOS\ Mojave.app --nointeraction
这一步根据U盘读写速度而定,一般10-30分钟.
5.制作完成后重启电脑.按住Option键,进入选择对应的安装盘来源(一个本地盘,一个安装U盘).
问题说明
a.如果安装过程中,看不到对应的U盘选项,则开机的时候按住 Command+R ,进入磁盘管理工具,在"安全"选项里,修改允许"通过外部磁盘启动".
b.如果是全新安装(删掉原用户),需要格式化原磁盘,否则相当于覆盖安装(原用户文档不会改变).
c.如果提示"This copy of the install macOS Mojave application is damaged, and can't be used to install macOS.",则只需到U盘(/Volumes/chen-u)里,删除Contents/SharedSupport/InstallInfo.plist 这个文件.重启,按住Option键.重新来.
mac安装程序
2019/04/29 Chenxin
安装普通软件(微信为例)
程序文件(程序安装的位置)
/Applications/WeChat.app/Contents 大约26MB.
数据文件(对方发的图片,文件,聊天记录等) 当前大约72MB.
/Users/chanix/Library/Containers/com.tencent.xinWeChat/Data/Library/Application Support/com.tencent.xinWeChat/2.0b4.0.9/ee...f24/Message/MessageTemp/29...7/File
brew安装的软件(telnet为例)
brew 又叫Homebrew,是Mac OSX上的软件包管理工具.之后就可以 brew install xxx.
若执行 brew install 命令,在国内会长时间卡在 Updating Homebrew .解决方法如下2种(临时+永久).
方法 1:按住 control + c 取消本次更新操作
brew install composer
Updating Homebrew...
^C
按住 control + c 之后命令行会显示 ^C,就代表已经取消了 Updating Homebrew 操作.大概不到 1 秒钟就会去执行我们真正需要的安装操作了.
方法 2:使用 Alibaba 的 Homebrew 镜像源进行加速
平时我们执行 brew 命令安装软件的时候,跟以下 3 个仓库地址有关:
- brew.git
- homebrew-core.git
- homebrew-bottles
通过以下操作将这 3 个仓库地址全部替换为 Alibaba 提供的地址
1. 替换 / 还原 brew.git 仓库地址
# 替换成阿里巴巴的 brew.git 仓库地址:
cd "$(brew --repo)" # 就是/usr/local/Homebrew
git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git
# 还原为官方提供的 brew.git 仓库地址
cd "$(brew --repo)"
git remote set-url origin https://github.com/Homebrew/brew.git
2. 替换 / 还原 homebrew-core.git 仓库地址
# 替换成阿里的 homebrew-core.git 仓库地址:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git
# 还原为官方提供的 homebrew-core.git 仓库地址
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://github.com/Homebrew/homebrew-core.git
3. 替换 / 还原 homebrew-bottles 访问地址(该镜像是 Homebrew 二进制预编译包的镜像,为提高安装速度)
这个步骤跟你的 macOS 系统使用的 shell 版本有关系.所以,先来查看当前使用的shell版本.echo $SHELL #通过bash版本,采用不同方式.
# 以下以bash 终端操作方式为例说明. 替换 homebrew-bottles 访问 URL:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
# 还原为官方提供的 homebrew-bottles 访问地址 vi ~/.bash_profile
# 然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行,然后 source ~/.bash_profile
源站额外信息:中科大的源地址
替换brew.git:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
替换homebrew-core.git:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
mac查看端口
2019/04/29 Chanix
1.命令 lsof -i tcp:port 或者lsof -i:port(port替换成端口号,比如6379)可以查看该端口被什么程序占用.并显示PID方便kill
lsof -i tcp:port
lsof -i:port
lsof -nP -iTCP
lsof -nP -iTCP -sTCP:LISTEN
lsof -i (实时监测)
2.netstat 在Mac上正确使用的方法是:即-f需要加上地址族,-p需要加上协议TCP或者UDP等.
netstat [-AaLlnW] [-f address_family | -p protocol]
netstat [-gilns] [-v] [-f address_family] [-I interface]
netstat -i | -I interface [-w wait] [-c queue] [-abdgqRtS]
netstat -s [-s] [-f address_family | -p protocol] [-w wait]
netstat -i | -I interface -s [-f address_family | -p protocol]
netstat -m [-m]
netstat -r [-Aaln] [-f address_family]
netstat -rs [-s]
a)如果需要查询inet,netstat -anvf inet
b)如果需要查询TCP, netstat -anvp tcp
b)如果需要查询UDP,netstat -anvp udp
3.netstat -AaLlnW 作用类似linux下 netstat -npl
4.使用mac系统里的"网络实用工具"进行扫描.
mac 调整默认的terminal设置(console设置)
2017/04
chanix$ cat /Users/chanix/.bash_profile
export CLICOLOR=1
export LSCOLORS=gxfxaxdxcxegedabagacad
alias ll='ls -alF'
export HOMEBREW_GITHUB_API_TOKEN="10ff591d09d1b8e98b4b6691cfe299204d1c1860"
export HISTTIMEFORMAT="`whoami` %F %T "
export HISTSIZE=“10000”
另外,系统自带的终端app功能太简化,推荐第三方 iterm2 的终端,支持分屏,选中自动复制等基本功能.官网: https://www.iterm2.com/donate.html
快捷键:
command+enter 进入与返回全屏模式
mac终端PS1设置
2019/07
PS1 环境变量的使用(Linux 或 Macbook) 颜色同 echo -e 的语法
自己的Macbook当前更改为:
chanix@Chanix-LGdeMacBook-Pro ~$ /etc/bashrc
...
#PS1='\h:\W \u\$ '
#主机名和目录名提示都加粗.主机,用户为黄色,目录为红色
PS1='\[\033[01;33m\]\u@\h\[\033[01;31m\] \W\$\[\033[00m\] '
...
#当前已更新为(不加粗,绿色):
#PS1='\[\033[01;33m\]\u@\h\[\033[00;32m\] \W\$\[\033[00m\] '
参数含义
下面简单说说环境下默认的特殊符号所代表的意义:
\u :当前用户的账号名称
\h :仅取主机的第一个名字
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
\d :代表日期,格式为weekday month date,例如:"Mon Aug1"
\H:完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
# :下达的第几个命令
参数格式
我们可以通过设置PS1变量使提示符成为彩色。在PS1中设置字符序列颜色的格式为:
\[\e[F;Bm\] # \[\033[01;33m\]\u@\h\[\033[01;31m\] \W\$\[\033[00m\]
# \033颜色调用开始.高亮.黄色.u@h.\033颜色调用开始.高亮.红色.W$.\033颜色调用.关闭.
# 其格式就是 [...[...]data[...[...]
同样,在用echo的时候一样.echo -e "\033[字背景颜色;字体颜色m字符串\033[0m"
echo -e "\033[41;36m something here \033[0m" #其中41代表底色, 36代表字的颜色.
\033则是(那些ascii code)对颜色调用的始末.\033[ ; m …… \033[0m
颜色说明
其中``F''为字体颜色,编号30~37;``B''为背景色,编号40~47。
可通过``\e[0m''关闭颜色输出;
特别的,当B为1时,将显示加亮加粗的文字,详细请看下面的颜色表与代码表。
前景 背景 颜色
---------------------------------------
30 40 黑色
31 41 红色
32 42 绿色
33 43 黃色
34 44 蓝色
35 45 紫紅色
36 46 青蓝色
37 47 白色
控制码 意义
-------------------------
0 OFF # 常用
1 高亮显示 # 常用
4 underline
5 闪烁
7 反白显示
8 不可见
mac 下 vim 调整
2019/04
cat /Users/chanix/.vimrc |grep -v -E "(^\"|^$)"
set modelines=0 " CVE-2007-2438
set nocompatible " Use Vim defaults instead of 100% vi compatibility
set backspace=2 " more powerful backspacing
au BufWrite /private/tmp/crontab.* set nowritebackup nobackup
au BufWrite /private/etc/pw.* set nowritebackup nobackup
let skip_defaults_vim=1
syntax on
set nu!
set autoindent
set t_ti= t_te=
set hlsearch # 搜索高亮
更加美观的适合写代码的vim请参考:
https://blog.csdn.net/amoscykl/article/details/80616688
mac下svn的使用
2017/05 Chenxin
检出新的项目:
cd /Users/chenxin/Library/Application\ Support/VanDyke/SecureCRT/Config/Sessions/crt_all201705/
svn checkout --username chenxin2 http://192.168.2.60:8080/svn/crt_all
update最新版本:
cd /Users/chenxin/Library/Application\ Support/VanDyke/SecureCRT/Config/Sessions/crt_all201705/crt_all
svn update
commit提交修改的:
cd /Users/chenxin/Library/Application\ Support/VanDyke/SecureCRT/Config/Sessions/crt_all201705/crt_all
如果有新增文件,执行: svn st | awk '{if ( $1 == "?") { print $2}}' | xargs svn add
如果有删除文件,执行: svn st | awk '{if ( $1 == "!") { print $2}}' | xargs svn delete
正式提交: svn commit -m "modify"
另外,个人的session放到以下:
cd /Users/chenxin/Library/Application\ Support/VanDyke/SecureCRT/Config/Sessions/personal_2017/personal
对应的SVN路径: http://192.168.2.60:8080/svn/personal
mac 快捷键
2017/04
截屏
Command+shift+3——截取整个屏幕(这个非常有用~截图在“Finder-我的所有文件”就能找到,从此告别QQ截图)
Command+shift+4——截取选择区域
Command+shift+4+空格——截取选择窗口(注意和上条的区别,手动操作试试吧!)
Command+向下 打开文件
Command + H: 隐藏窗口
Vim: Ctrl + F: 翻页 Ctrl+B: 向上翻页
Ctrl + Command + F: 窗口最大化,或还原为原大小
Command + R: 刷新页面
Command + Shift + R: 强制刷新页面(Chrome等) (而Safari为 Command + Option + R,或shitf+刷新图标 )
Command+N:新标签页
Ctrl + Command + Q: 锁屏 / 已调整为 option + shift + L
Command + Tab : 切换打开的应用程序前台
Ctrl + Tab: 切换当前应用程序的标签页
Ctrl + 空格: 切换到上一个输入法
Ctrl + Option + 空格 : 切换到下一个输入法
Command+M: 最小化窗口
Command+W: 关闭窗口
Command+Q: 退出程序
Command+C复制文件/文本;
Command+Option+V把你的文件剪走(结合command + c 来实现剪切文件功能).
Command+X:剪切文字文本
Command + V:黏贴
Shift + Command + V: 去掉格式的黏贴
del: 向前删除
fn + del : 向后删除
Command + Z: 撤销
Shift + Command + Z: 撤销刚才的“撤销”
Enter 更改文件名
Command + space : 搜索本地软件
Command+delete 移到废纸篓(删除)
Command+Option+esc 键可以强行退出死机程序
Command+option 快捷方式.鼠标拖动应用程序或文件夹夹,制作快捷方式(也可以右键菜单中的"制作替身"功能)
三指拖拽文件功能 系统偏好设置->右下角辅助功能->在左边下滑选项单->鼠标与触控板->在下方点击“触控板”选项->在“启用拖移”选择“三指拖拽手势”->就可以使用三指进行拖拽文件到其他文件夹了.
定义 锁屏/关机/重启 快捷键
系统偏好设置----->键盘------>快捷键----->应用快捷键 .点击加号,在第一行
输入"锁定屏幕",然后在第二行定义快捷键,我定义的是 shift+option+l.
输入“关机”,而不是“关机…”,输入快捷键 shift+option+k ,主菜单会多出了一个"关机"选项(注意跟"关机..."的差异).
输入"重新启动",可以用shift+option+r.
Mac 手势
2019/07
双指
左右/上下 翻滚
点按 鼠标右键
分离/聚拢 放大/恢复
三指
选中,拖拽
四指
左右 换桌面
上(然后左右换) 预览当前打开的桌面上的所有程序.顶端是多个桌面,四指左右切换.中间是各桌面打开的应用.
下(然后左右换) 当前桌面打开的应用,四指左右则在当前桌面切换该桌面上的应用.
上下后,拖动 拖动程序窗口到顶端,或直接拖动顶端桌面到其他位置,为更改桌面顺序
分离(用五指更方便) 显示桌面
五指
分离 显示桌面
聚拢 打开程序坞
finder 使用技巧
2019/04/21
-
显示路径
底部显示路径:打开Finder .显示>显示路径栏>显示>显示状态栏>和>显示>显示预览,三项: 打开显示
顶端显示路径: defaults write com.apple.finder PathBarRootAtHome -bool TRUE;killall Finder 回车.
恢复默认: defaults delete com.apple.finder PathBarRootAtHome;killall Finder 回车. -
让文件扩展名显示
Finder 偏好设置,选中「高级」标签,然后在「始终显示文件扩展名」前面打勾. -
使 Finder 默认显示自定义目录
Finder 偏好设置,「通用」标签,「开启新 Finder 窗口时打开」项下选择你喜欢的目录即可. -
在侧边栏显示用户目录
Finder 偏好设置,选中「边栏」标签,然后记得勾选你的用户名. -
「个性化」Finder 工具栏
Finder 可以让用户在工具栏添加一些常用的功能按钮.可以放置前进/后退、排列方式等常用的功能在工具栏.
在 Finder 窗口菜单栏点击右键,选择「自定义工具栏」项。拖拽一些你需要的按钮到工具栏。 -
在 Finder 标题栏显示完整路径
命令: defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
其实呢,对着路径最左边的小图标点右键,就能快速访问路径中的任意一层:任意路径
-
始终显示用户「资料库」
用户资料库是用来储存配置文件、缓存和用户数据的目录(路径:~/Library/),由于 OS X 设置了系统文件保护,资料库在 Finder 中被设置为默认不显示。显示命令: chflags nohidden ~/Library/ 回车即可。 -
显示 Finder 隐藏文件
第一种方式
隐藏命令: defaults write com.apple.finder AppleShowAllFiles -boolean true ; killall Finder
恢复默认: defaults write com.apple.finder AppleShowAllFiles -boolean false ; killall Finder
(以上也有将-boolean 写为 -bool 的形式).
第二种方式
显示Mac隐藏文件:defaults write com.apple.finder AppleShowAllFiles YES
隐藏Mac隐藏文件:defaults write com.apple.finder AppleShowAllFiles NO
重启Finder:鼠标单击窗口左上角的苹果标志-->强制退出-->Finder-->重新启动
-
显示文件(夹)的信息
Finder 可以告诉你一些关于文件和文件夹的非常实用的信息,比如选中的文件夹内有多少个文件、照片的分辨率(这个笔者最喜欢)等等。在桌面点击鼠标右键,选择「查看显示选项」,选中「显示项目简洁」项. -
你必须知道的 3 个快捷键
10.1. CMD-Z:撤消文件的复制、移动或删除操作(CMD-Z).
可以简单理解为「撤消」操作,无论是撤销文本输入或是撤销文件删除操作(可多次).注:若是重启了 Finder,该快捷键就没法了。
10.2. Return(回车)键:重命名文件/文件夹
重命名文件/文件夹的最简单方法是在选择该项目后,按一下 Return 键(回车键)。
10.3. Space(空格)键:即时预览
在 Finder 中选择任何一个项目,按下空格键。这将立即打开一个特殊窗口:Pdf 也好,音乐也好,视频也好.
11.上一级目录,回退,前进
command + ↑ 快捷键也就是返回上一级目录;
command + ] 快捷键也就是向前;
command + [ 快捷键也就是向后;
control + shift + tab 快捷键也就是切换到前一个标签页;
control + tab 快捷键也就是切换到后一个标签页;”
12.finder底部显示文件数
按一下 Command 键和 / 键: 在finder的底部显示当前文件夹的文件数量和空间
13.文件夹显示方式
Command+1 以图标方式显示
Command+3 以列表方式显示
macbook网卡说明
lo0: inet 127.0.0.1 netmask 0xff000000 #lo 回环接口
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 #gif 通用IP-in-IP隧道(RFC2893)
stf0: flags=0<> mtu 1280 #stf 6to4(RFC3056)连接
XHC20: flags=0<> mtu 0
XHC1: flags=0<> mtu 0
XHC0: flags=0<> mtu 0
VHC128: flags=0<> mtu 0
en0: flags=8963mtu 1500 ether 38:...:6e:e3 inet 192.168.3.29 broadcast 192.168.3.255 #en IONetworkingFamily 以太网或802.11接口
en1: flags=8963...
en2: flags=8963...
en5: flags=8863<UP,BROATICAST> mtu 1500 #en IONetworkingFamily 以太网或802.11接口
ap1: flags=8802...
p2p0: flags=8843...
awdl0: flags=8943...
bridge0: flags=8863...
utun0: flags=8051...
XNU原始支持的网络接口:
接口名称 类型
bond 聚合两个或多个网络接口
bridge 第2层桥接
gif 通用IP-in-IP隧道(RFC2893)
lo 回环接口
pflog 包过滤;接收PF记录的所有包的副本
stf 6to4(RFC3056)连接
utun 用户隧道:VPN和其他进程通过这个接口提供一个伪接口,这个伪接口的流量都会重新引导到用户态进程、
vlan 虚拟局域网
内核扩展创建的接口:
接口名称 所属的内核扩展/族 类型
en IONetworkingFamily 以太网或802.11接口
fw IOFileWireIP IP over FireWire(IEEE-1394),仅限于OS X
pdp_ip AplleBaseBandFamily 蜂窝数据连接(iPhone 和 iPad)
ppp PPP Point-to-Point 协议(pppd)
路由(查看网关,查看路由表)
拨号VPN后添加内网路由:
mac电脑添加路由:
sudo route -n add -net 192.168.0.0 -netmask 255.255.0.0 192.168.104.1
其他:
sudo route add 192.168.0.0/16 192.168.104.1
修改路由表,同时使用有线网卡和无线网卡
netstat -nr 查看路由表
sudo route delete 0.0.0.0 删除默认路由
sudo route add -net 0.0.0.0 192.168.1.1 默认使用192.168.1.1网关
sudo route add 10.200.0.0 10.200.22.254 有线网卡使用该网关
sudo route add 10.0.1.0/24 10.200.22.254 其它网段指定网关
securecrt 8.5.2 破解
下载文件:
https://bbs.feng.com/read-htm-tid-6939481.html
好像直接下载完了就可以使用了.没有提示激活.不知道是否有时间限制.
破解:
https://www.jianshu.com/p/9427f12b1fdb
下载破解文件,替换,并输入激活码.之后就可以正常打开了.
sublime的使用
2019/07/12
列模式: Option+鼠标左键 选择
zip 加密压缩
zip -re RegularBackup-20190718.zip RegularBackup
-r 为下面所有目录在内
-e 增加密码 passwordxxx.....
MAC 的 DNS配置 与 解析 原理
2019/07/31 Chenxin
单独修改/etc/resolv.conf是没有效果的,需要更改系统网络配置里才行(会自动更新resolv.conf).
SS开启不会修改系统网络配置.OPenvpn则会修改.
修改系统网络配置的DNS后,无需刷新系统DNS,网上很多说刷新mac dns的方式如下(可以不用刷):
mac10.14刷新方法 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder;
手动在网络配置里配上8.8.8.8的dns后,ping us.alibabacloud.com解析正常.然后删除8.8.8.8,重新ping,无法解析.说明mac不用刷新DNS就能生效.
开机自启动程序
2019/08/22
系统偏好设置->用户->登陆项
开启"安全与隐私->允许任何来源"
打开非app store安装的应用,提示"文件已损坏,请将它移至废纸篓"
打开方式 sudo spctl --master-disable 开启"任何来源"的允许安装
恢复方式 sudo spctl --master-enable
重置启动台图标
终端执行:
defaults write com.apple.dock ResetLaunchPad -bool true && killall Dock