1. 程式人生 > >關於將mac升級到macOS Sierra之後 Sublime Text無法在命令列執行subl .解決辦法

關於將mac升級到macOS Sierra之後 Sublime Text無法在命令列執行subl .解決辦法

今天把mac 升級到了最新的作業系統之後出現了一系列的事故,Sublime Text就是其中之一,發現升級系統之後Sublime Text無法在命令列執行subl .

我的操作步驟如下:

首先把檔案拷貝到/usr/bin資料夾下

sudo cp /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/bin/

執行下面命令,發現還是找不到subl

which subl

於是嘗試將 mvim 重新複製到/usr/bin/中去

sudo cp -f mvim /usr/bin/

然而出現了許可權問題:

cp: /usr/bin/mvim: Operation not permitted

搜尋之後發現,是El Capitan 加入了Rootless機制,不再能夠隨心所欲的讀寫很多路徑下了。設定 root 許可權也不行。Rootless機制將成為對抗惡意程式的最後防線
於是嘗試關閉 Rootless。重啟按住 Command+R,進入恢復模式,開啟Terminal(就是終端)。
輸入如下命令

csrutil disable

重啟即可。

注意如果要恢復預設,那麼輸入下面命令即可(當然我們的目的就是禁用,所以不需要執行下面命令)

csrutil enable

之後再把檔案拷貝到/usr/bin資料夾下

sudo cp /Applications/Sublime\ Text.app
/Contents/SharedSupport/bin/subl /usr/bin/

執行下面命令,

which subl

結果輸出

/usr/bin/subl

證明你已經修改成功了可以使用subl .命令了哈哈