1. 程式人生 > >Mac OS X Terminal command入門與命令彙總

Mac OS X Terminal command入門與命令彙總

很多朋友對osx下的命令列操作撓頭,估計多數是在windows時代開始接觸計算機的。有dos基礎的應該是看看就明白,而玩過Linux的應該是輕車熟路了。這個貼子希望能給見到命令列就頭大的兄弟一些幫助,所涉及到的命令基本限於安裝kext,修改plist,更換核心 所碰到的操作。如果想進一步瞭解Unix的命令,再網上找些關於Linux命令的文章看,有很多。
高手們就免看了,不過希望能來挑挑毛病,再來補充兩句。。。

——————————————————————————————————————————————

1、mac終端切換使用者到root

sudo -i即可

2、mac終端切換成普通使用者

su - test(test為使用者名稱)即可

3、mac可以設定命令別名

如ll,正常情況下,mac終端不識別ll命令,但是alias 命令設定別名後,終端即可以設別ll命令:alias ll='ls -la';但是沒有修改系統檔案,則該命令只能臨時生效,下次再開啟終端,還是不能識別ll命令,永久生效辦法,請修改系統檔案,方法有多種,請自行百度(如果不是ll命令,其他命令同理)



OSX 的檔案系統
OSX 採用的Unix檔案系統,所有檔案都掛在跟目錄 / 下面,所以不在要有Windows 下的碟符概念。
你在桌面上看到的硬碟都掛在 /Volumes 下。
比如接上個叫做 USBHD的行動硬碟,桌面上會顯示出一個硬碟圖示,它實際在哪裡呢?

在終端裡執行 ls /Volumes/USBHD, 看看顯示出的是不是這個行動硬碟的內容。

根目錄位置是 / 核心 Mach_kernel 就在這裡,
驅動所在位置 /Systme/Library/Extensions
使用者資料夾位置 /User/使用者名稱
桌面的位置 /User/使用者名稱/Desktop

檔案萬用字元為星號 *

注意:在 Unix系統中是區別大小寫字元的,A.txt 不等於 a.txt。
根目錄標誌 / 不是可有可無,cd /System 表示轉到跟目錄下的System中,而cd System 表示轉到當前目錄下的 System中

——————————————————————————————————————————————


如何進入命令列操作模式
再圖形介面下,用finder 開啟 應用程式 》實用程式》終端
如果連圖形介面都進不去了(比如安錯了顯示驅動),開機時按 F8,用-s引數啟動,然後輸入命令 mount -uw /


獲得許可權
為了防止誤操作破壞系統,再使用者狀態下時沒有許可權作業系統重要檔案的,所以先要取得root許可權
sudo -s
然後輸入密碼,輸入密碼時沒有任何回顯,連星號都沒有,只管輸完回車就行了。

——————————————————————————————————————————————

基本命令
列出檔案
ls 引數 目錄名
例: 想看看跟目錄下有什麼,
ls /
想看看驅動目錄下有什麼,
ls /System/Library/Extensions
引數 -w 顯示中文,-l 詳細資訊, -a 包括隱藏檔案
轉換目錄
cd
例:想到驅動目錄下溜達一圈
cd /System/Library/Extensions

建立新目錄
mkdir 目錄名
例:在驅動目錄下建一個備份目錄 backup
mkdir /System/Library/Extensions/backup
在桌面上建一個備份目錄 backup
mkdir /User/使用者名稱/Desktop/backup

拷貝檔案
cp 引數 原始檔 目標檔案
例:想把桌面的Natit.kext 拷貝到驅動目錄中
cp -R /User/使用者名稱/Desktop/Natit.kext /System/Library/Extensions
引數R表示對目錄進行遞迴操作,kext在圖形介面下看起來是個檔案,實際上是個資料夾。
把驅動目錄下的所有檔案備份到桌面backup
cp -R /System/Library/Extensions/* /User/使用者名稱/Desktop/backup

刪除檔案
rm 引數 檔案
例:想刪除驅動的快取
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
引數-rf 表示遞迴和強制,千萬要小心使用,如果執行了 rm -rf / 你的系統就全沒了


移動檔案
mv 檔案
例:想把AppleHDA.Kext 移到桌面
mv /System/Library/Extensions/AppleHDA.kext /User/使用者名稱/Desktop
想把AppleHDA.Kext 移到備份目錄中
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup

更改檔案許可權
chmod 引數 許可權 檔案
例:把驅動目錄下所有檔案設定到root讀寫,其他使用者只讀
chmod -R 755 /System/Library/Extensions
引數R 表示遞迴,755表示各使用者的許可權

更改檔案屬主
chown 引數 使用者:組 檔案
例:把驅動目錄下的所有檔案屬主改成根使用者
chown -R root:wheel /System/Library/Extensions
引數R 表示遞迴操作

修復整個系統中檔案的許可權
diskutil repairpermissions /
嚴格的說這不是一個unix 命令,而是osx一個軟體,記得修改或新增的驅動就執行一次。

文字編輯
nano 檔名
例:編輯natit Info.plist
nano /System/Library/Extensions/Natit.kext/Info.plist
編輯完成後 用 Ctrl +O 存檔,Ctrl+X 退出
另一個文字編輯軟體是 vi,操作有些古怪,熟了是非常好用的,而且在所有類Unix系統中都它,走遍天下都不怕了。

執行指令碼命令
sh 指令碼檔名
例 修改驅動後所有需要的操作存成一個指令碼,以後修改了驅動後只要執行一次這個指令碼就可以了,方便吧
1. 終端中執行nano /clean
2. 把下列程式碼貼上到 nano 中
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
chown -R root:wheel /System/Library/Extensions
chmod -R 755 /System/Library/Extensions
diskutil repairpermissions /
kextcache -k /System/Library/Extensions/
3. Ctrl +O 存檔,Ctrl+X 退出
4. 以後只要動了驅動,就在終端中執行一次 sh /clean

————————————————————————————————————
小技巧

用 Tab 鍵自動補齊命令
比如想到 /System 目錄中去,輸入 cd /Sy 然後按一下Tab 鍵,命令就會自動補齊成 cd /System

操作帶名字中帶有空格的檔案和目錄
空格在命令中寫成 空格, 比如要進入 My Documents,命令為 cd My Documents

檢視命令的詳細幫助
man 命令名
比如要看看 ls 命令的詳細用法,執行 man ls

————————————————————————————————————
典型操作流程
(假設已經制作好清理指令碼,記得每次操作前 sudo -s 獲得系統許可權)

假設下載了一個顯示卡驅動 Natit.zip,在桌面解壓得到了一個Natit.kext,該怎麼做呢?

為了保險起見,先把所有驅動備份了再說
mkdir /User/使用者名稱/Desktop/backup 在桌面上建立備份資料夾
cp -R /System/Library/Extensions/* /User/使用者名稱/Desktop/backup 備份驅動檔案

現在可以安心安裝了
cp -R /User/使用者名稱/Desktop/Natit.kext /System/Library/Extensions 把它 拷貝到系統驅動目錄位置
sh /clean 執行清理指令碼,操作完成

重新開機失敗,進不去桌面了,發現不應該安這個驅動,怎麼恢復呢?
開機按F8,用 -s 引數啟動
執行 mount -uw /
rm -rf /User/使用者名稱/Desktop/Natit.kext 刪除這個驅動
sh /clean 執行清理指令碼,操作完成

重啟,回到原先狀態了,不死心啊,沒有特效怎麼行呢,又聽說需要修改 Natit的 Info. plist 檔案才行,好,再來
cp -R /User/使用者名稱/Desktop/Natit.kext /System/Library/Extensions 把它 拷貝到系統驅動目錄位置
nano /System/Library/Extensions/Natit.kext/Info.plist
編輯完成後 用 Ctrl +O 存檔,Ctrl+X 退出
sh /clean 執行清理指令碼,操作完成

重啟,這回對了,顯示卡特效都有了,該弄音效卡了,天知道會出什麼事,得把現有成果保護好。
mkdir /User/使用者名稱/Desktop/gooddrivers 專為有效驅動建個目錄
cp -R /System/Library/Extensions/Natit.kext /User/使用者名稱/Desktop/gooddrivers 備份

這個音效卡要求把 AppleHDA.kext 刪除和編輯 AppleAzaliaAudio.kext中的Info.plist 檔案,誰知道以後會不會還用AppleHDA呢,不如暫時禁用吧。
mkdir /System/Library/Extensions/disabled 建立個禁用目錄
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/disabled 移動過去
nano /System/Library/Extensions/Natit.kext/AppleAzaliaAudio.kext/Info.plist
編輯完成後 用 Ctrl +O 存檔,Ctrl+X 退出
sh /clean 執行清理指令碼,操作完成
成功了,也把修改好的驅動備份一下把
複製程式碼



以下是unix的命令列,供參考

目錄操作

命令名
功能描述
使用舉例

mkdir
建立一個目錄
mkdir dirname

rmdir
刪除一個目錄
rmdir dirname

mvdir
移動或重新命名一個目錄
mvdir dir1 dir2

cd
改變當前目錄
cd dirname

pwd
顯示當前目錄的路徑名
pwd

ls
顯示當前目錄的內容
ls -la

dircmp
比較兩個目錄的內容
dircmp dir1 dir2

檔案操作

命令名
功能描述
使用舉例

cat
顯示或連線檔案
cat filename

pg
分頁格式化顯示檔案內容
pg filename

more
分屏顯示檔案內容
more filename

od
顯示非文字檔案的內容
od -c filename

cp
複製檔案或目錄
cp file1 file2

rm
刪除檔案或目錄
rm filename

mv
改變檔名或所在目錄
mv file1 file2

ln
聯接檔案
ln -s file1 file2

find
使用匹配表示式查詢檔案
find . -name "*.c" -print

file
顯示檔案型別
file filename

選擇操作

命令名
功能描述
使用舉例

head
顯示檔案的最初幾行
head -20 filename

tail
顯示檔案的最後幾行
tail -15 filename

cut
顯示檔案每行中的某些域
cut -f1,7 -d: /etc/passwd

colrm
從標準輸入中刪除若干列
colrm 8 20 file2

paste
橫向連線檔案
paste file1 file2

diff
比較並顯示兩個檔案的差異
diff file1 file2

sed
非互動方式流編輯器
sed "s/red/green/g" filename

grep
在檔案中按模式查詢
grep "^[a-zA-Z]" filename

awk
在檔案中查詢並處理模式
awk '{print $1 $1}' filename

sort
排序或歸併檔案
sort -d -f -u file1

uniq
去掉檔案中的重複行
uniq file1 file2

comm
顯示兩有序檔案的公共和非公共行
comm file1 file2

wc
統計檔案的字元數、詞數和行數
wc filename

nl
給檔案加上行號
nl file1 >file2

安全操作

命令名
功能描述
使用舉例

passwd
修改使用者密碼
passwd

chmod
改變檔案或目錄的許可權
chmod ug+x filename

umask
定義建立檔案的許可權掩碼
umask 027

chown
改變檔案或目錄的屬主
chown newowner filename

chgrp
改變檔案或目錄的所屬組
chgrp staff filename

xlock
給終端上鎖
xlock -remote

程式設計操作

命令名
功能描述
使用舉例

make
維護可執行程式的最新版本
make

touch
更新檔案的訪問和修改時間
touch -m 05202400 filename

dbx
命令列介面除錯工具
dbx a.out

xde
圖形使用者介面除錯工具
xde a.out

程序操作

命令名
功能描述
使用舉例

ps
顯示程序當前狀態
ps u

kill
終止程序
kill -9 30142

nice
改變待執行命令的優先順序
nice cc -c *.c

renice
改變已執行程序的優先順序
renice +20 32768

時間操作

命令名
功能描述
使用舉例

date
顯示系統的當前日期和時間
date

cal
顯示日曆
cal 8 1996

time
統計程式的執行時間
time a.out

網路與通訊操作

命令名
功能描述
使用舉例

telnet
遠端登入
telnet hpc.sp.net.edu.cn

rlogin
遠端登入
rlogin hostname -l username

rsh
在遠端主機執行指定命令
rsh f01n03 date

ftp
在本地主機與遠端主機之間傳輸檔案
ftp ftp.sp.net.edu.cn

rcp
在本地主機與遠端主機 之間複製檔案
rcp file1 host1:file2

ping
給一個網路主機發送 迴應請求
ping hpc.sp.net.edu.cn

mail
閱讀和傳送電子郵件
mail

write
給另一使用者傳送報文
write username pts/1

mesg
允許或拒絕接收報文
mesg n

Korn Shell 命令

命令名
功能描述
使用舉例

history
列出最近執行過的 幾條命令及編號
history

r
重複執行最近執行過的 某條命令
r -2

alias
給某個命令定義別名
alias del=rm -i

unalias
取消對某個別名的定義
unalias del

其它命令

命令名
功能描述
使用舉例

uname
顯示作業系統的有關資訊
uname -a

clear
清除螢幕或視窗內容
clear

env
顯示當前所有設定過的環境變數
env

who
列出當前登入的所有使用者
who

whoami
顯示當前正進行操作的使用者名稱
whoami

tty
顯示終端或偽終端的名稱
tty

stty
顯示或重置控制鍵定義
stty -a

du
查詢磁碟使用情況
du -k subdir

df
顯示檔案系統的總空間和可用空間
df /tmp

w
顯示當前系統活動的總資訊
w

相關推薦

Mac OS X Terminal command入門命令彙總

很多朋友對osx下的命令列操作撓頭,估計多數是在windows時代開始接觸計算機的。有dos基礎的應該是看看就明白,而玩過Linux的應該是輕車熟路了。這個貼子希望能給見到命令列就頭大的兄弟一些幫助,所涉及到的命令基本限於安裝kext,修改plist,更換核心 所碰到的操作

Mac OS X終端的常用操作命令(UNIX指令)

mov 刪除 一級目錄 去哪兒 文件夾 刪除文件 結束 命名 什麽 用了十多年windows,終於換了個高配Mac,俗話說 無論前端還是後端最終還是走向了linux,無論是換了多少臺PC最終都會走向Mac。不學習命令行用什麽Mac? 幹就完了~ pwd 顯示現在的

Launch Sublime Text from the Mac OS X Terminal

透過指令開啟特定的檔案們進sublime 這個真的超方便的。 version 2: ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl version 3: ln -s "/Applica

Mac OS X:顯示/設定解析度的命令(源程式)

注:把變更現實解析度的程式碼完成了。 變更的時候,因為10.6不再提供諸如10.5之前的設定最佳解析度的系統功能,所以需要自己編寫。 設定和顯示顯示解析度-原始碼 下面是一個設定和顯示當前系統 顯示

Mac】在Mac OS X下解決opencvPython的No module named cv2問題

最近遇到一個影象專案,打算搞一搞,看了一些程式碼,發現用Python處理比較方便,鑑於之前做影象都是使用C++、OpenCV,這次打算看看Python與CV的效能與效果。 我之前的mac上面是安裝了Python與opencv的,但都是分別安裝的,並沒有進行一些合用配置。在敲

mac OS X下終端使用tree命令列目錄

1. 問題描述   相信很多使用過Linux的使用者都用過tree命令,它可以像windows的檔案管理器一樣清楚明瞭的顯示目錄結構。不過有是有並不是系統本身就自帶的,如果需要的話,Ubuntu下可執行下列命令安裝。      sudo apt-get i

40 個很有用的 Mac OS X Shell 指令碼和終端命令

System Restart Mac OS X: shutdown - r now Shutdown Mac OS X: shutdown now Power Management / Energy Saving Get overview of current Po

Mac OS X 下終端系統命令丟失提示 command not found 解決方法

  事件的起因是我在 ~/.bash_profile 裡添加了 ~/.composer/vendor/bin 這個東西導致,或許是 OS X 10.11 的 bug?   先說說 Mac OS

MAC OS X 終端命令入門 (簡單常用整理)

今天小研究了一下MAC的終端命令,主要為了方便除錯程式用,XCODE用不來啊。。。 在這裡記下。。防止丟失 pwd      當前工作目錄 cd(不加引數)  進root cd(folder)  進入資料夾 cd ..      上級目錄 cd ~      

使用常見的網路命令檢視當前網路狀態——Mac OS X

轉自https://blog.csdn.net/zkh90644/article/details/50539948 以下是正文內容: 作業系統擁有一套通用的實用程式來查明本地主機的有線或者無線鏈路狀態和IP的連線情況。如果本機有IP連線,那麼就意味著有線或者無線是正常工作的。在Mac OS

[SQL]MySQL基本命令(Mac OS X)

1.登陸與退出: /usr/local/MySQL/bin/mysql -u root -p 輸入密碼後回車即可登陸,也可以在p後直接寫密碼,但是存在安全性問題,登陸後發出如下警告: 2.資料庫操作: 1.建立create: create database da

How can I install the `ll` command on Mac OS X?

In OS X 10.9.5 since Mavericks (and at least up to El Capitan) you have to add an alias command to your .bash_profile file in your home folder: ~/.bash_pr

如何在Mac OS X上用命令列快速的調整圖片大小

如果你使用的是Mac,經常需要調整一批照片的大小,實際上有一個內建工具,可以讓你無需開啟任何影象編輯工具就能搞定。這就是所謂的“SIPS”,是命令列的影象處理工具。它非常容易使用,但你需要知道如何在終端上發揮它的優勢。 簡單地說你想要處理的圖片拷貝到一個目錄中的,在終端cd到該目錄,並執行以下命令

MAC OS X 命令終端的顏色顯示

目標 開啟 terminal 會發現 ls 和 grep 後的結果是沒有色彩的,這時候可以這麼幹: 用 vim 開啟檔案 ~/.bash_profile,然後把下邊的環境變數放進去: # Tell ls to be colourful export C

MacMac OS X 安裝GNU命令列工具

macos的很多使用者都是做it相關的人,類unix系統帶來了很多方面,尤其是經常和linux打交道的人。 但是作為經常使用linux 命令列的人發現macos中的命令列工具很多都是bsd工具,跟linux下得使用方式開始差距挺大的,那麼怎麼安裝GNU命令

修改 Mac OS X 預設的退出快捷鍵 command + Q

在很多應用中,使用 command + A 全選快捷鍵時,容易誤按到 command + Q 退出快捷鍵,導致應用直接關閉 。 解決方案: 1. 得知自己應用快捷鍵的名字 2. 在 System Preferences(系統便好設定) - Keyboard(鍵盤) - Sh

Mac OS X命令列編譯錯誤: ld: library not found for -lcrt1.10.6.o

在 Mac OS X 的 10.8.3 的版本中,使用命令列執行 configure 時,生成下面的錯誤: WenBi-MacBook:tcpdump-4.4.0 wenbi$ ./configure checking build system type... x86

黑蘋果的初安裝升級 VMware12+mac os x 10.9+升級+VMware Tools安裝

此文主要記錄黑蘋果的安裝與升級虛擬機器中mac 系統重要步驟。供自己回頭檢視。 二大步驟:①安裝VMware12   ③安裝VMware tools(黑蘋果需要安裝tools才能共享主機檔案和設定網路等)  ①安裝VMware12  參考主要教程http://jingyan

如何在Mac OS X中開啟或關閉顯示隱藏檔案命令

開啟終端,輸入: defaults write com.apple.finder AppleShowAllFiles -booltrue此命令顯示隱藏檔案 defaults write com.app

Mac OS X 自帶輸入法輸入Emoji表情顏文字

Emoji表情: 美式英文輸入法與簡體拼音輸入法下按快捷鍵 control + command + 空格鍵彈出如下視窗 選取即可。 顏文字: 簡體拼音輸入法下按快捷鍵 shift + 6 彈出如下視窗 選取即可。 常用截圖快捷鍵: 全屏截圖 shift + comm