請問有哪些實用的Mac終端命令?


1. $ say "hello"

用來讓mac讀出一段文字。但是本身這個功能沒什麼用,我覺得比較實用的用法是:

執行比較耗時間的命令的時候,比如:

$ sleep 10 say "hello"

這樣等程序運行完了會語音提醒我。

2. pbcopy

與之對應都是pbpaste,前面有人提到了。我另外在.zshrc加了一個函數:

function copy() { cat $1 |pbcopy }

另外也在.vimrc中加了調用這個命令的快捷鍵。

3. cdf

可以讓shell跳轉到finder打開的文件夾,不過要提前在.zshrc中的plugin中加入osx

4. rmtrash

以前誤刪過很多文件,後來通過brew裝了這個,並且在.zshrc中alias rm="rmtrash"。這樣,每次刪除文件會直接移動到Trash文件夾裡面,誤刪了還能及時找回來。

5. zsh

裝上zsh之后里面有一些插件,可以根據需求自行了解。

6. brew cask

可以用來裝.app,比如 chrome, qq之類的,可以寫到重裝系統配置文件裡面,但是因為和app store有時候會有衝突,不推薦。

7. rsync -avz --delete

把這個寫到判斷文件夾變化的plist文件裡面,然後launchctl load,可以同步兩個文件夾。

暫時就想到這些。


我專門請設計師同學幫我設計了terminal的背景(最好是iTerm,可以設置背景圖片 + 模糊度),用的是局域高光,雙曲線漸變紋理,可以承托出terminal的質感,和Mac其他應用相得益彰,非常典雅高貴,彰顯使用者品味。

效果圖如下(知乎傳圖片解析度變差了):

兩款terminal背景提供免費下載,高貴的你值得擁有,點擊下載高清大圖:

耀石黑雙曲肌理

海心藍圓形肌理(知乎特供)

最後為了強行點題,送一個我獨創的小命令,在命令行裡面將某個文件夾文件的全路徑複製到Mac系統剪貼板(然後可以cmd+V):

alias cpgrf="function _cpgrf(){echo -n `grf $1` | pbcopy; echo "Path copied: `grf $1`"};_cpgrf"

把這一行複製到你的 ~/.bashrc 或者 ~/.zshrc 裡面就好啦


自從玩了一下iterm+zsh之後就感覺不能自拔了。mac自帶好用的命令不算太多,但是確實有好用的,前面的都說了很多。我覺得實用的終端命令應該是離不開好用的命令行工具。如果你安裝了足夠多好用的命令行工具,那麼命令行都可以替代你的Alfred(當然並沒有黑Alfred)

1.dict-cli

這是一個依賴python的翻譯命令行工具,用 pip 就可以安裝。可以參考wufeifei/dict的github。不過有時候會出現error(不太多),這是因為作者說的」由於內置的有道翻譯的Key因為調用量過濾頻繁導致被封了,正在溝通協調解決中「。

$ sudo pip install dict-cli

$ dict test

在配置文件中設置d = dict 就可以更快一點:d test &> 測試。效果

2.wd

這是一個可以記住你的文件種徑的工具。怎麼說,比如你要進入/a/b/c/d/e/f,你得輸入好幾次的cd 吧。有了這個工具,你可以在 /a/b/c/d/e/f 目錄下輸入 wd add mydir(別名,自己起),下次你在任意目錄下就可以輸入 wd mydir就可以一步到達那個路徑了。

安裝

打開你的.zshrc文件,這是個隱藏文件,你可以這樣打開。

open ~/.zshrc

然後在plungins下添加 wd(git osx autojump都是好用的插件哦~,大家可以都試試看)

使用:

wd add name # 將當前目錄映射到name,相當於 name對應當前目錄

cd 到你別的目錄

wd name # 回到之前的目錄

3. boom

這是一個可以記住你網站的工具。首先,你在命令行輸入

boom urls bd www.baidu.com # 相當於創建一個urls文件夾,裡面bd對應www.baidu.com

下次你想打開百度,就可以在命令行輸入

boom open bd

就可以用你默認瀏覽器打開百度了。

4. ccat

可以讓你的cat文件時候高亮代碼,以前cat文件時候總是白字,太難受了,用了ccat文件可以讓你的代碼高亮,這個可能不一定實用。效果如下

安裝的話就用homebrew就可以了。

brew install ccat

5. googler

這個可以讓你在命令行中用google搜索,不過國內的話就有點困難哈~ 安裝可以用homebrew安裝

brew install googler

效果

參考網站

6. cal

這是一個用命令行工具查看日曆的命令。你有沒有過一種時刻,旁邊的人問你XX日去吃飯呀,你突然想看看當天是星期幾,然後你就打開的日曆,是不是覺得超級麻煩?本來都不怎麼用日曆這個應用,用來還得關後台,唉。cal就是一個很好的命令,而且是自帶的。

用法

cal #查看當月
cal 2017 #查看當年的日曆

效果

當然還有查看當前時間的(命令:date),不過可能不是特別有用,我一般看菜單欄就好了。效果如下

7.archey

這是一個查看當前mac概覽的插件,可以用brew安裝。好處就是,查看自己ip的時候不用輸入ifconfig然後一行一行去看,看mac的「關於本機」不用再去點菜單欄了。

安裝

brew install archey

交果

# 最後送一張壁紙

既然有人說想要Overwatch的壁紙,那我也放上來吧。


帶你了解一些你可能也能用到的命令行,讓你輕鬆開啟系統的隱藏功能。

0. Dock 欄屬性修改

Mac 中為了獲得更大的可視空間,在不使用 Dock 時我們可以隱藏它。若要查看隱藏的 Dock,可以將指針移到 Dock 所在屏幕的邊緣。但是這個顯示速度存在了一定的延遲,為了加速這個過程,我們可以使用一段命令行,讓你的隱藏 Dock 彈出的時候更加的順滑流暢:

defaults write com.apple.Dock autohide-delay -float 0 killall Dock

使用後的效果,可以說是非常明顯了,再也不會有在「擠牙膏」的感覺。

如果在你的使用下,Dock 欄上擺滿了各類 App,卻發現這不是自己想要的結果。你可以通過終端來重置你的 Dock 欄,讓它回到最開始的狀態:

defaults delete com.apple.dock; killall Dock

1. 讓屏幕亮的更久

Mac 在運行一段時間後,會自動進入睡眠。如果大家不想 Mac 那麼快的進入書面,可以採用一些第三方軟體來達到此目的。其實與其下載一個軟體佔用 Mac 上精貴的儲存,不如使用一段命令行就可以解決這些問題了。下方命令行中的 3600 單位是秒,即你希望多長時間內你的 Mac 不會進入睡眠:

caffeinate -t 3600

2. 顯示隱藏文件夾

在 Windows 上隱藏文件夾大家應該都是老手了,轉到 Mac 後,卻發現隱藏文件夾和自己想像有那麼一些不一樣。為了更好的把大家的「小秘密」藏到內心最深處的地方,也可以使用兩段命令來完成操作。跟前文一樣,我們需要獲取文件夾的路徑,然後在終端中輸入以下代碼:

chflags hidden ~/Desktop/Hidden

你也可以使用 nohidden 重新讓該文件夾顯示。如果你要顯示全部文件,推薦大家直接使用快捷鍵「Shift + Command + .」即可顯示全部隱藏文件。

除此之外,如果你覺得自己桌面太亂了,但是這會又有人來看你的電腦,你可以使用一段命令行將桌面的文件全部隱藏起來,讓桌面回歸清爽,文件也依舊可以通過 Finder 中的桌面中找到:

defaults write com.apple.finder CreateDesktop -bool false; killall Finder

如果想重新看到桌面的圖標,將 false 替換為 true 輸入終端即可。

3. 配置 Launchpad

在大家安裝好應用去 Launchpad 里尋找的時候,時常會發現原生的配置讓 Launchpad 看的稍許擁擠,但是在系統偏好設置里我們是無法修改的。為了讓我們的 Launchpad 識別度更高並且更加美觀,可以通過終端對排列方式進行修改,複製以下代碼至終端即可:

defaults write com.apple.dock springboard-columns -int 8; defaults write com.apple.dock springboard-rows -int 7; defaults write com.apple.dock ResetLaunchPad -bool TRUE; killall Dock

命令中有兩個數字 8 和 7,它們分別代表的是布局中的列數和行數,如果想更清除的了解該段命令,可以參考《通過終端命令改變 Launchpad 中應用圖標的大小》。

除了可以對 Launchpad 的布局進行更改,還可以根據自己的喜好對北背景的模糊程度進行更改,複製以下代碼至終端即可:

defaults write com.apple.dock springboard-blur-radius -int 100; killall Dock

命令中有一個數字 100,它代表的背景模糊的程度,你可以在 0 ~ 255 的範圍內選擇。

4. 修改截圖屬性

Mac 上自帶的截圖非常的還用,可以區域、窗口、延時截圖。但是截圖會默認保存在你的桌面上,時間一長,你的桌面就會被五花八門的截圖堆滿。對此,我們可以新建一個文件夾專門來存放截圖,新建一個 screenshots 的文件夾在桌面或者任意一個你希望它待在的地方,將下述代碼複製進終端即可:

defaults write com.apple.screencapture location ~/Desktop/screenshots; killall SystemUIServer

~ 之後填寫你相應的文件夾路徑即可,如果不清楚路徑的寫法,可以打開該文件夾右鍵點擊任何一個文件「顯示簡介」,複製「位置」之後的內容即可,也可以直接將文件夾拖拽至終端以此顯示路徑。

除此之外,你也可以使用以下命令修改截圖保存的類型,例如你想保存 JPG 格式的截圖:

efaults write com.apple.screencapture type jpg killall SystemUIServe

5. 應用安裝與更新

MAS 的連接情況大家也很清楚,時常會因為情緒不穩定導致你無法獲得最完美的下載體驗,況且還有很多應用並不在商店上架,或是非商店版本有更多的功能。原來的時候,我們需要查找一個又一個的官網,然後下載安裝,其實這麼多繁瑣操作,在終端里可以更快的完成。你只需要輸入:

brew cask install App

將 App 替換為你需要安裝的軟體的名字即可。但是使用前,需要你在電腦中安裝 Homebrew Cask ,具體可以參考《再談 Homebrew Cask 在 macOS 上安裝應用的輕鬆感》。大多數通過 Cask 安裝的軟體都自帶更新選項,如果沒有該選項,用戶依舊可以通過終端進行更新,在終端中輸入brew tap buo/cask-upgrade,然後再輸入下段命令即可更新全部應用:

brew cu

如果你希望安裝 MAS 上的應用,也可以繞過原生的商店應用,直接採用終端進行安裝。你可以先通過剛才安裝的 Homebrew 安裝一個我們需要的 mas ,即在終端輸入:

brew install mas

然後,可以在終端中搜索需要的軟體,或者直接輸入關鍵欄位加上應用的識別碼進行安裝:

mas install AppID

友情提示 ??

終端操作雖然說很快捷,可能你也覺得很高端。但是,在網路上經常會有人拿終端命令開玩笑,比如前面帶有 sudo 或者 rm -rf 類型欄位的,一定要謹慎使用。可能就是這一步操作,電腦就會「爆炸」,也希望大家也不要開這一類玩笑,給大家一個美好的環境!


「新手問號」是少數派的一個全新欄目。它面向完全「零基礎」的新手用戶,通過最簡單易懂的方式,幫助你快速掌握關於系統和軟硬體的入門知識。

欄目文章回顧:

  • 向 Windows 高級用戶進階,這 10 款效率工具幫你開路
  • macOS 上都有哪些既免費、又實用的工具?
  • 剛從 Windows 轉到 macOS,如何快速上手操作?
  • 做好這四種方法,讓你的 Mac 遠離數據被盜和丟失


man


我寫了一個命令行工具可以知道當前目錄下有多少行代碼,名字叫做line-counter。

支持類似git的.gitignore的篩選文件的功能,在我這裡是一個line.select文件。通過建立這個文件就可以定向統計指定內容的文件的行數。

比如這樣:

Analyze all files (when "line.select" doesn"t exist) or specific files (when "line.select" exists) under current directory.

$ line
Search in /Users/Morgan/Documents/Example/
file count: 4
line count: 839

還有這樣:

Analyze all files (when "line.select" doesn"t exist) or specific files (when "line.select" exists) under current directory.

And show results in detail.

$ line -d
Search in /Users/Morgan/Documents/Example/
Dir A/file C.c 72
Dir A/file D.py 268
file A.py 467
file B.c 32
file count: 4
line count: 839

個人感覺這個工具還是挺實用的。另外還有一些其它的功能,有興趣的可以看看。路過我的github倉庫時請幫忙點個star或fork就最好不過了,多謝~

Github地址:MorganZhang100/line-counter · GitHub

快速獲取命令:$ pip install line-counter


defaults write com.apple.notificationcenterui bannerTime #

改推送通知提示橫幅顯示持續時間,把#改成想要改的數字,比如10,就是10秒


不知道這哥們@陳宇什麼心態

希望那兩個人沒有去嘗試,也呼籲一下各位知友別抖這種機靈。


給幾個我常用的。

把命令行的輸出直接複製到粘貼板:

$ sort -u|pbcopy

把粘貼板內容直接存入一個文件:

$ pbpaste &> out.txt

用 Finder 打開當前目錄

$ open .

查看一個文件有多少行:

$ wc -l out.txt

查看文件前 100 行

$ head -100 out.txt

查看文件最後 100 行

$ tail -100 out.txt

除了前三個,其餘的都是 *nix 通用的命令行


難道不是歷史記錄搜索么?

試想一下你要輸入一條命令,輸入一半時想到曾經輸入過這條命令,然後按一下向上鍵,能夠自動的根據已經輸入的內容在歷史記錄中搜索。

設置方法:

新建~/.inputrc,輸入:

"e[A": history-search-backward
"e[B": history-search-forward

Ok!Done.


# 永!遠!不!要!執!行!你!不!清!楚!在!干!啥!的!命!令!

rm -rf /*


推薦本書 Mac Kung Fu: Over 400 Tips, Tricks, Hints, and Hacks for Apple OS X: Keir Thomas: 9781937785079: Amazon.com: Books


$ chsh -s /bin/zsh

既然喜歡用或有用的需求,就換個順手的shell

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

很多命令Mac上沒有,包管理什麼的太感人……Homebrew 以外還有Fink和MacPort,我個人偏好brew

$ sudo brew install git

git

$ curl -L http://install.ohmyz.sh | sh

強大的zsh配置

$ sudo brew install autojump

@池建強 推薦的autojump 果然是好用

$ brew install caskroom/cask/brew-cask

拖動dmg的App到Application的替身里太酷了!開了又開,迄今為止最bigger的安裝方式。(二進位可以用brew……GUI也可以用包管理)

$ brew install axel

我覺得比wget curl順手多了

GUI Apps

https://iterm2.com/downloads/stable/iTerm2_v2_0.zip

自帶的Terminal.app與iTerm 2簡直不能比

http://www.alfredapp.com/#download

下載並且購買Powerpack,配合終端使用,可以快速運行shell命令

https://api.textmate.org/downloads/release

TextMate支持命令 mate

PlistEdit Pro支持命令 pledit

(其實以上幾個可以brew cask install alfred 這樣安裝)


  • 更改 OS X 屏幕截圖存儲路徑

defaults write com.apple.screencapture location ~/Documents

location後的為自定義的存儲路徑,如:~/Desktop/Screen Shot

最後

killall SystemUIServer

  • 還原為默認存儲地址(也就是桌面)方法異曲同工

defaults write com.apple.screencapture location ~/Desktop
killall SystemUIServer


-

1.say xxx

對英文單詞進行發音,挺常用的。

2.讓自動隱藏Dock減小延遲

defaults write com.apple.Dock autohide-delay -float 0 killall Dock

恢復:

defaults delete com.apple.Dock autohide-delay killall Dock

3.顯示Finder中的隱藏文件

defaults write com.apple.finder AppleShowAllFiles -bool YES killall Finder

恢復:

defaults write com.apple.Finder AppleShowAllFiles FALSE

4.更改屏幕截圖保存位置

defaults write com.apple.screencapture location ~/Pictures/Screenshots

5.更改默認屏幕截圖保存類型

defaults write com.apple.screencapture type jpg killall SystemUIServer

6.我才不會告訴你這是什麼東西呢

telnet towel.blinkenlights.nl

-


1、裝一個 iTerm2 + oh my zsh 了解一下快捷鍵和常用功能,爽的飛起

2、brew

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

3、好玩的話,裝一個the fuck吧,不要想多了,糾錯用的哈哈哈哈


你們真的有耐心RTFM么?

用tldr https://github.com/tldr-pages/tldr/tree/master/pages 節省生命吧。

命令覆蓋率不高。做好還是man一下的準備。


課件大放送啦。

有的命令可能 Linux/Unix 有別,隨時準備 man。

http://www.cse.unsw.edu.au/~cs2041/14s2/lec.new/filters_handout.pdf

http://www.cse.unsw.edu.au/~cs2041/14s2/lec.new/shell_handout.pdf


lsof: Xnu"s equivalent to Proc File System.

afplay: Audio File Play

lldb: Inject into software. LLVM"s Debugger.

nc: Netcat

ls /usr/bin | grep utils

postfix: Email postoffice


cd改變路徑

然後touch創建文件

使用場景:在OS X中創建txt純文本文件(右鍵菜單不能直接創建,你也可以創建其他擴展名的文件啦

感覺這樣速度快,效率非常高

補充:mkdir 新建文件夾

以上提到的都是Unix指令


推薦閱讀:

OS X 上有哪些優秀的免費軟體?
類 Unix 有那些設計比 Windows 的好?
OS X El Capitan 中你最喜歡的新特性是什麼?
Mac 下最好用的五筆輸入法是什麼?
網易雲音樂為什麼沒有mac的桌面版?

TAG:MacBook | Mac | macOS | 終端命令 |