。霜瘪。珠插。未完待續(xù)
更改Mac默認(rèn)睡眠模式
三種睡眠模式
Mac睡眠模式有三種,Sleep(睡眠)颖对、Deep Sleep(深度睡眠)和Safe Sleep(安全睡眠)捻撑;對應(yīng)的操作分別是Suspend to RAM、Suspend to Disk和Suspend to RAM and Disk缤底,內(nèi)部代碼是睡眠模式0顾患、1、3个唧。
-
Sleep:數(shù)據(jù)駐留在內(nèi)存中描验,內(nèi)部代號
hibernatemode 0
。這種模式下電腦進(jìn)入睡眠時坑鱼,數(shù)據(jù)保留在內(nèi)存中膘流,不寫入硬盤,僅用少量的電量對內(nèi)存供電鲁沥,以保持內(nèi)存中的數(shù)據(jù)不會因斷電而丟失呼股。
喚醒時直接重內(nèi)存加載數(shù)據(jù)。所以優(yōu)點是入睡快画恰,喚醒快彭谁,不占用硬盤空間。但是一旦掉電允扇,數(shù)據(jù)全部丟失缠局,不可恢復(fù)则奥,所以數(shù)據(jù)安全性不高是他的缺點。
-
Deep Sleep:將數(shù)據(jù)保存在硬盤中狭园,內(nèi)部代號
hibernatemode 1
這種模式下读处,電腦進(jìn)入睡眠時,首先將內(nèi)存的數(shù)據(jù)快速寫入硬盤中睡眠專用的內(nèi)存鏡像文件中(該文件位于:/var/vm/目錄下唱矛,名為sleepimage罚舱,這是一個隱藏目錄,vm的意思就是虛擬內(nèi)存)绎谦。一旦內(nèi)存數(shù)據(jù)寫入硬盤成功后管闷,就不再對內(nèi)存供電,僅保留CPU監(jiān)聽喚醒信號的功能窃肠。
喚醒時再將硬盤中的數(shù)據(jù)加載到內(nèi)存中包个,因為入睡時要寫入硬盤,喚醒的時候會看到一個顯示加載進(jìn)度的進(jìn)度條冤留,它的優(yōu)點時安全性高碧囊、省電,缺點是占用硬盤空間和喚醒速度較Sleep要慢搀菩。
-
Safe Sleep:上面兩種模式的結(jié)合(也是OSX系統(tǒng)默認(rèn)的睡眠級別)呕臂,內(nèi)部代號
hibernatemode 3
當(dāng)Mac進(jìn)入睡眠時破托,先將內(nèi)存中的數(shù)據(jù)寫入到硬盤(防止數(shù)據(jù)丟失)肪跋,然后對內(nèi)存持續(xù)供電,所以它的特點是入睡快土砂、喚醒快州既、安全性高。
當(dāng)電源供電正常時萝映,可以像Sleep那樣喚醒時直接重內(nèi)存中讀取數(shù)據(jù)吴叶;當(dāng)電池耗盡后喚醒Mac,可以Deep Sleep那樣從硬盤中的數(shù)據(jù)加載到內(nèi)存序臂。
該模式結(jié)合了前兩種模式的有點蚌卤,同時也繼承了缺點,就是要給內(nèi)存持續(xù)供電奥秆、占用硬盤空間逊彭。
便攜式電腦一般采用這種模式,寫入硬盤這點表現(xiàn)的尤為明顯构订,如果時筆記本電腦侮叮,當(dāng)你合上筆記本或點擊睡眠的時候,就會發(fā)現(xiàn)呼吸燈首先一直保持高亮狀態(tài)悼瘾,這表示正在向硬盤中寫入數(shù)據(jù)囊榜,當(dāng)寫入完成時指示燈開始進(jìn)入呼吸狀態(tài)审胸,這表示你的Mac已經(jīng)進(jìn)入夢鄉(xiāng)了!卸勺!
查看你的Mac當(dāng)前的睡眠模式:
打開“終端”輸入下面內(nèi)容:pmset -g | grep hibernatemode
設(shè)置睡眠模式
打開“終端”輸入下面內(nèi)容:sudo pmset -a hibernatemode xxx
xxx代表睡眠模式的代號
如果想設(shè)置回默認(rèn)砂沛,則輸入sudo pmset -a hibernatemode 3
如何選擇
作為開發(fā)人員,平時工作會打開很多軟件孔庭,如果每次開機(jī)完打開各種軟件尺上,然后把各個軟件恢復(fù)到昨天或者一段時間之前的狀態(tài),會花掉很多時間圆到。
所以對于開發(fā)人員來說,用操作系統(tǒng)上下文切換芽淡、保存現(xiàn)場的話來說马绝,就是迅速恢復(fù)到當(dāng)時的工作狀態(tài),這點是很重要的挣菲。因此:
- 如果
中斷工作---再次工作
的時間較長頻率較低富稻,則建議將默認(rèn)的睡眠模式設(shè)置為深度睡眠模式 - 如果
中斷工作---再次工作
的時間較短頻率較高,則建議直接使用默認(rèn)睡眠模式
設(shè)置顯示隱藏文件
defaults write com.apple.finder AppleShowAllFiles -bool true
killall Finder
若要不顯示隱藏白胀,將第一句的true
改為false
即可
Mac自帶emacs快捷鍵
例如椭赋,C-n C-p C-b C-f C-a C-e
等等等等。
用這些能大幅度提高輸入效率或杠。
建議將Ctrl
和Caps lock
互換哪怔。
方法如下:
打開系統(tǒng)偏好設(shè)置=> 鍵盤,然后如圖所示操作
顯示用戶目錄下的資源庫文件夾(~/Library)
在我自己的電腦系統(tǒng)(OS X 10.11.5)下向抢,用戶目錄下的資源庫文件夾默認(rèn)隱藏了不讓查看认境,可能是由于蘋果擔(dān)心用戶不小心誤刪了資源庫中的文件,而故意隱藏挟鸠。
不過想讓這個文件夾顯示出來也非常簡單叉信,直接在終端輸入下列命令就可以了:
chflags nohidden ~/Library
如果還想讓它隱藏,輸入下面的指令:
chflags hidden ~/Library
VIM
VIM想提高生產(chǎn)力艘希,插件挺重要硼身,號稱最難裝的插件———YouCompleteMe
見另一篇 VIM的折騰和配置 (按照這篇的步驟,嚴(yán)格一步一步來覆享,一定可以成功佳遂!)
然后就是配置:.vimrc
以及.ycm_extra_conf.py
配置
Emacs
Emacs很復(fù)雜,已經(jīng)可以單獨(dú)占篇幅了淹真,所以參見我的另一篇博客:Emacs的折騰和配置
Java&Scala環(huán)境搭建
-
Java:去Oracle官網(wǎng)下載想要安裝的JDK的dmg包讶迁,然后掛載dmg包,按照正常的dmg軟件安裝流程去安裝即可,安裝后不需要自行去配置環(huán)境變量巍糯。
安裝目錄:
/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
驗證:終端輸入<code>java -version</code>
-
Scala:有2種方式安裝啸驯,推薦第二種
- 先去Scala官網(wǎng)下載Scala的語言包,該包是個.tar文件祟峦,解壓該包罚斗,并把文件夾放到<code>/usr/local/</code>下,然后在家目錄新建<code>.bash_profile</code>文件宅楞,并在里面添加兩行:<code>SCALA_HOME="/usr/local/scala-2.11.8"</code>
<code>export PATH=$PATH:$SCALA_HOME/bin</code> - 通過Homebrew安裝:brew install scala
驗證:終端輸入<code>scala -version</code>
- 先去Scala官網(wǎng)下載Scala的語言包,該包是個.tar文件祟峦,解壓該包罚斗,并把文件夾放到<code>/usr/local/</code>下,然后在家目錄新建<code>.bash_profile</code>文件宅楞,并在里面添加兩行:<code>SCALA_HOME="/usr/local/scala-2.11.8"</code>
XCode安裝以及一些必備插件
安裝XCode:去蘋果商店下載针姿。
-
安裝必備插件:
-
安裝Alcatraz(插件管理器):<code>curl -fsSL https://raw.github.com/alcatraz/Alcatraz/master/Scripts/install.sh | sh</code>
驗證:XCode->Windows->Package Manager,看到這個就說明安裝成功厌衙。
安裝xvim(vim插件):進(jìn)入Package Manager距淫,然后搜索xvim,點擊install即可婶希。其他插件的安裝同理榕暇。
安裝SCXcodeMinimap(代碼地圖):像sublime text一樣,右上角有個地圖導(dǎo)航喻杈。
...:根據(jù)個性化安裝
安裝插件時候彤枢,有時候會遇到提示UUID失敗等類似的錯誤提示,解決方案如下:
0. 查找自己的UUID:<code>defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID</code>
1. 終端輸入:<code>find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add ACA8656B-FEA8-4B6D-8E4A-93F4C95C362C</code>
2. 手動添加:右鍵Xcode筒饰,選擇顯示包內(nèi)容缴啡;然后找到Contents/Info.plist路徑下的Info.plist文件;雙擊Info.plist文件瓷们,找到DVTPlugInCompatibilityUUID业栅,將對應(yīng)的UUID復(fù)制;接下來到出問題的插件所在目錄下换棚,右鍵式镐,選擇顯示包內(nèi)容反镇,然后找到Contents/Info.plist路徑下的Info.plist文件固蚤;雙擊Info.plist文件,將剛剛復(fù)制的UUID增加到DVTPlugInCompatibilityUUID字段里面歹茶,保存夕玩。 -
-
卸載插件
安裝插件一般二個辦法:一是通過前面提到的插件管理器Alcatraz安裝,另一種是自己clone源碼然后build安裝惊豺。
因此:
- 如果是通過Alcatraz安裝的燎孟,直接打開XCode的Package Manager卸載
- 如果是通過自己手動安裝的,進(jìn)目錄<code>~/Library/Application Support/Alcatraz/Plug-ins</code>刪除插件的整個文件夾尸昧,然后刪除<code>~/Library/Application Support/Developer/Shared/Xcode/Plug-ins</code>目錄下該插件對應(yīng)<code>.xcplugin</code>文件揩页。
刪除Alcatraz本身(同上,刪除插件文件夾以及插件的配置文件):<code>rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin
rm -rf ~/Library/Application\ Support/Alcatraz</code>
終端命令顯示不同顏色
Mac默認(rèn)的終端不顯示顏色烹俗,可以在<code>.bash_profile</code>中加上一句話即可:<code>alias ls="ls -G"</code>
關(guān)閉開機(jī)音
終端輸入以下命令(會要求輸入密碼)
關(guān)閉:sudo nvram SystemAudioVolume=
開啟:sudo nvram -d SystemAudioVolume
Homebrew的安裝與卸載
Homebrew是一個很好的包管理工具爆侣,它的好處和基本使用就不多說了萍程,前人之述備矣。
安裝卸載的方法來自于官網(wǎng)兔仰,具體有疑問的地方請參見Homebrew的Github官網(wǎng)茫负。
Homebrew 將軟件包分裝到單獨(dú)的目錄/usr/local/Cellar
,然后 symlink 到/usr/local
中乎赴。
安裝:
<code>/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
</code>-
卸載:
- <code>cd `brew --prefix`</code>
rm -rf Cellar
brew prune
- <code>rm `git ls-files`</code>
rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
rm -rf .git
rm -rf ~/Library/Caches/Homebrew
CSDN網(wǎng)友給了個示例忍法,也可以考慮這個:
gerryyang@mba:~$ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
It appears Homebrew is already installed. If your intent is to reinstall you
should do the following before running this installer again:
rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup
這玩意兒很強(qiáng)大很好,建議就裝著別卸榕吼。
brew可以用第三方庫
命令brew tap xxx/yyy
饿序,然后就可以brew install aaa
了。
brew常用命令:
brew tap # list tapped repositories
brew tap <tapname> # add tap
brew untap <tapname> # remove a tap
brew卸載時自動卸載不相關(guān)依賴
在stackoverflow上找到了答案羹蚣,把問題和回答貼出來
問題:
答案:
stackoverflow原貼鏈接:
http://stackoverflow.com/questions/7323261/uninstall-remove-a-homebrew-package-including-all-its-dependencies
Mac下的Python環(huán)境
這篇Python的雜項也可以參考嗤堰。
我們知道,Mac系統(tǒng)自帶了Python2度宦,因為系統(tǒng)有些東西依賴了Python2踢匣;系統(tǒng)沒有自帶Python3。
系統(tǒng)的這種設(shè)定有幾個問題:
- 系統(tǒng)自帶的跑跑系統(tǒng)的依賴還行戈抄,但是作為開發(fā)者要Python開發(fā)這就不夠用了离唬;
- 系統(tǒng)有東西依賴著自帶的Python,所以系統(tǒng)自帶的Python也就順理成章地成為了“高危區(qū)域”划鸽,一旦自己一個手賤把自帶的Python搞壞了哪怕一點點输莺,可能系統(tǒng)就會出現(xiàn)問題;
- 系統(tǒng)自帶的Python連pip這種神器都沒有裸诽,需要自己
sudo easy_install pip
嫂用,而且國外網(wǎng)被墻了,經(jīng)常失敗丈冬,咱要是裝個自帶pip等這種神器的Python多好嘱函。
基于上面幾點,所以我們需要安裝平時可用(亂搞)的Python埂蕊,這時候就就要借助到上面提到的Homebrew了往弓。
用Homebrew安裝的Python在/usr/local/Cellar
下。
安裝Python2
brew install python
安裝Python3
brew install python3
這樣安裝好的Python2和Python3自帶了pip~
設(shè)置PATH
可以先看一下自己的PATH:echo $PATH
里面應(yīng)該會有: /usr/bin: /bin: /usr/sbin: /sbin: /usr/local/bin
這個決定了終端里面找命令的順序蓄氧,因此想在輸入Python時找我們自己裝的Python函似,只需要把/usr/local/bin
放在最前面即可:
改成:/usr/local/bin: /usr/bin: /bin: /usr/sbin: /sbin
修改PATH可以在
/etc/paths
里面修改,也可以在~/.bash_profile
里面修改喉童。建議后者撇寞,因為前者是系統(tǒng)的,后者是用戶的。系統(tǒng)的別隨便改蔑担,用戶的隨意改露氮。
跟改之前的對比一下,可以看出钟沛,內(nèi)容沒有絲毫改變畔规,就是改變了一下順序而已。
驗證PATH設(shè)置成功
-
驗證Python2
- 輸入
which python
- 如果顯示
/usr/local/bin/python
則表明成功
- 輸入
-
驗證Python3
- 輸入
which python3
- 如果顯示
/usr/local/bin/python3
則表明成功
- 輸入
安裝恨统、設(shè)置后叁扫,如何使用系統(tǒng)的Python
如果有需要想使用一下系統(tǒng)的Python,輸入/usr/bin/python
即可
安裝后續(xù)
通過Homebrew安裝的Python都是自帶pip的畜埋,通過自帶的這個pip安裝的包都裝到哪個目錄中去了呢莫绣?
答案是:/usr/local/lib/python2.7/site-packages
和/usr/local/lib/python3.5/site-packages
下面
其他情況、雜項
如果之前自行手動安裝過Python官網(wǎng)的dmg包悠鞍,或者用系統(tǒng)的Python安裝過其他東西对室,例如用系統(tǒng)自帶的Python,安裝了pip咖祭。
而上面說過掩宜,這種方式不推薦,而是推薦Homebrew么翰,現(xiàn)在想卸載掉原來安裝的牺汤,然后再用Homebrew安裝,以保證系統(tǒng)Python的純凈浩嫌,那該怎么辦呢檐迟?
-
用老方式安裝過了pip
sudo easy_install pip
: 安裝路徑在。码耐。追迟。。骚腥。(個人猜測:/Library/Python/2.7/site-packages
)敦间,根據(jù)安裝路徑進(jìn)去找對應(yīng)文件,刪掉桦沉。
-
用老方式安裝的pip安裝了virtualenv
sudo pip install virtualenv
:安裝路徑在每瞒。金闽。。。铸屉。(個人猜測:/Library/Python/2.7/site-packages
)瘸味,根據(jù)安裝路徑進(jìn)去找對應(yīng)文件,刪掉。 -
用老方式安裝了Python3
如果去Python官網(wǎng)下載了Python3的dmg包安裝了Python3钞速,現(xiàn)在想卸載干凈怎么辦贷掖?
結(jié)合suspicious package這個軟件就可以刪干凈了(前提是原安裝包還在)
安裝MySQL
通過Homebrew安裝:brew install mysql
手動開啟MySQL服務(wù):
-
mysql.server start
; -
mysql -uroot -p
; 輸入密碼(初始沒有密碼的情況下直接回車)
如果想配置開機(jī)自啟動以及設(shè)置成自啟動后想取消自啟動,進(jìn)行如下操作:
$ cp /usr/local/Cellar/mysql/5.6.16/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
#5.6.16是數(shù)據(jù)庫版本號渴语,根據(jù)你當(dāng)時所安裝的版本號自己修改
#start
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
#stop
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
安裝好后苹威,MySQL的root用戶默認(rèn)是沒有密碼,如果想設(shè)置密碼驾凶,可以進(jìn)行如下操作:set password for root@localhost = password('XXXXX');
安裝MySQL驅(qū)動
目前,有兩個 MySQL 驅(qū)動:
- mysql--connector--python:是 MySQL 官方的純 Python 驅(qū)動;
- MySQL-python:是封裝了 MySQL C 驅(qū)動的 Python 驅(qū)動牙甫。
可以兩個都裝上,使用的時候再決定用哪個:
-
pip install mysql--connector--python
- 如果失敗调违,改成這樣
pip install mysql-connector-python --allow-external mysql-connector-python
- 如果依然失敗窟哺,需要改成這樣:
pip install --extra-index-url https://pypi.python.org/pypi/mysql-connector-python/2.0.4 mysql-connector-python
- 如果上面都失敗的話,就這樣:
pip install https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.1.4.tar.gz
- 如果失敗调违,改成這樣
pip install mysql-python
注意: 在拿到數(shù)據(jù)庫鏈接這一步技肩,二者的用法稍微不同:
-
mysql--connector--python
import mysql.connector conn = connector.connect(......)
-
mysql-python
import MySQLdb conn = MySQLdb.connect(......)
Mac下Ruby環(huán)境
還沒寫且轨,待補(bǔ)充,可暫時參見Ruby的雜項虚婿。旋奢。。
native extension報錯的解決辦法
Mac好用的編輯器
除了vim和emacs然痊,其他的人氣高的黄绩、公認(rèn)好用的編輯器有:
- VS Code
- Sublime Text 3
- Textmate 2
VS Code
目前個人感覺它的vim插件不太好用,其他的目前沒發(fā)現(xiàn)什么不爽的地方玷过。
原生可以在編輯器里預(yù)覽MarkDown爽丹,這個簡直不能太爽!P廖谩粤蝎!
另外,它的插件安裝在:~/.vscode/extensions/
目錄下
Sublime Text 3
按照個人的習(xí)慣和品位袋马,還是更喜歡VS Code初澎。
Sublime我比較欣賞的是,不需要任何插件虑凛,配置一下配置文件就有vim模式碑宴。
Sublime的插件安裝目錄在:~/Library/Application Support/Sublime Text 3/Packages
目錄下
TextMate 2
Mac下大名鼎鼎的編輯器!
我個人用得較少桑谍,因為其vim插件“textmatevim”只支持TextMate 1延柠,不支持TextMate 2。用習(xí)慣了vim模式锣披,離開了它確實不太習(xí)慣贞间。所以我用得少贿条。
Mac的~/Library
這個目錄下放的是個人用戶的資源庫。
可以類比
/Library
:放的是系統(tǒng)的資源庫
~/Library
下有個Application Support
目錄增热,這個目錄放了個人用戶應(yīng)用程序相關(guān)的數(shù)據(jù)以及支持文件整以,比如第三方的插件、幫助應(yīng)用峻仇、模板等公黑。
注意 ,有些軟件的插件放在這個目錄下摄咆。比如我如果裝了JetBrains家的某些IDE帆调,可能還會裝個
IDEA Vim
插件,該插件就在這個目錄下豆同。
其他重要目錄
結(jié)合上面提到的Python的一些目錄的情況番刊,加上Unix/Linux系統(tǒng)的一些基礎(chǔ)知識,就可以自行推知其他重要目錄的作用影锈。
Mac下的emacs
我們都知道芹务,Mac下是自帶了emacs的。而Ruby的安裝會引入emacs鸭廷。它們都分別裝在哪里呢枣抱?來看一下。
其中打紅框的是系統(tǒng)自帶的emacs辆床,沒打的是由于Ruby引入的佳晶。
Ruby受Lisp影響很大,Ruby之父的Lisp水平也很高讼载,他自己也明確表示過很喜歡Lisp轿秧,個人猜想有這個原因?
Mac自帶的Python以及Ruby等
/Library/Python/
/System/Library
/System/Library/Frameworks
/System/Library/Frameworks/Python.framework
其他自帶的一些東西咨堤,可以舉一反三菇篡。
Mac刪干凈VMware Fusion 8.5
方法一:手動刪
手動刪除下面這些文件(版本不同可能有點出入,不過不要緊一喘,就是把相關(guān)文件刪除干凈的意思):
- /Library/Application Support/VMware
- /Library/Application Support/VMware Fusion
- /Library/Preferences/VMware Fusion
- ~/Library/Application Support/VMware Fusion
- ~/Library/Caches/com.vmware.fusion
- ~/Library/Preferences/VMware Fusion
- ~/Library/Preferences/com.vmware.fusion.LSSharedFileList.plist
- ~/Library/Preferences/com.vmware.fusion.LSSharedFileList.plist.lockfile
- ~/Library/Preferences/com.vmware.fusion.plist
- ~/Library/Preferences/com.vmware.fusion.plist.lockfile
- ~/Library/Preferences/com.vmware.fusionDaemon.plist
- ~/Library/Preferences/com.vmware.fusionDaemon.plist.lockfile
- ~/Library/Preferences/com.vmware.fusionStartMenu.plist
- ~/Library/Preferences/com.vmware.fusionStartMenu.plist.lockfile
方法二:軟件刪結(jié)合手動刪
推薦軟件:APPdelete
用該軟件刪完后驱还,再手動查找上面列出的東東,沒刪掉的話刪干凈即可凸克。
一般這種刪軟件的APP议蟆,對于家目錄下的關(guān)聯(lián)文件夾基本都能刪干凈,所以這里手動檢查的時候萎战,重點檢查非家目錄下的文件(夾)咐容。