標籤:
很多朋友對osx下的命令列操作撓頭,估計多數是在windows時代開始接觸電腦的。有dos基礎的應該是看看就 明白,而玩過Linux的應該是輕車熟路了。這個貼子希望能給見到命令列就頭大的兄弟一些協助,所涉及到的命令基本限於安裝kext,修改plist,更 換核心 所碰到的操作。如果想進一步瞭解Unix的命令,再網上找些關於Linux命令的文章看,有很多。
高手們就免看了,不過希望能來挑挑毛病,再來補充兩句。。。
——————————————————————————————————————————————
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 執行清理指令碼,操作完成
成功了,也把修改好的驅動備份一下把
#####################################################################
Mac OS X 的命令列介面是成千上萬程式的基礎,可平常使用者往往不知道它的存在。依靠 GNU 基金會以及開源社區的多年努力,Apple 設計出一個“無須”使用命令的傑出作業系統。在不必為了每天的日常操作而動用命令列的同時,只要利用得當,命令列仍然能夠節省你不少時間,偶爾還會讓你開 懷一笑。希望你能好好享受這裡提到的十個 OS X 命令列工具!
1、ssh
這顆小小的“寶石”包含於 Mac OS X 的每個版本,其開發的最初目的只是為了取代 rsh/rlogin,現在卻成為 Linux/Unix(包括 Mac OS X)社區不可缺少的一部分。openssh 的主要作用就是安全的遠端管理。開啟系統預置,點擊“共用”,勾選“遠程登入”,即可啟動 Mac OS X 的內建 SSH 服務。現在假設你想串連你不在身邊的電腦,可以藉助類似 PuTTY(Windows 平台)的用戶端,或者在 Mac OS X 的終端視窗中輸入“ssh”串連你 Mac 的 IP 位址。以你的使用者名稱和密碼登入之後,你便獲得了 Mac OS X 命令列的完整操作權。除此之外,openssh 還有許許多多應用,有些可是相當了不起的。我就很喜歡用 ssh 搭個 SOCKS 代理,這樣我在公用地點也能安全上網衝浪。在Mac 上使用 ssh 的更多技巧,可以瀏覽本頁!
2、top
top 是另一個長期為 Linux/Unix 社區使用的經典工具,使用它只需開啟終端輸入“top”。眨眼之間,你就會看見一個滿是文字的視窗——每一個正在你的 Mac 上啟動並執行進程都會被列出。如果我的 Mac 速度變慢,top 是讓我知道什麼正在發生的首選。點擊 這裡,查看 top 的完整概述。
3、lsbom
如果你偶然在某個 Mac 網站(比如 OS X Daily)發現一件夠酷夠新的軟體,忍不住想安裝,而你又猶豫不決,那麼 lsbom 對你大有好處。通過它,你可以測試 Mac OS X 安裝包(.pkg)的內容,並且清楚瞭解究竟會有什麼被塞進你心愛的檔案系統。要使用 lsbom,你需要啟動終端,並進入 .pkg 檔案所在的目錄。如果你的安裝包形式是 .dmg,可能需要把其中的 .pkg 檔案拷貝到案頭上,然後進入 Desktop 目錄。一旦確認 .pkg 檔案的位置,輸入“lsbom .pkg/Contents/Archive.bom> | more”。哇!你所看見的就是新程式將會安裝的完整檔案清單。
4、say
這個命令是 Mac OS X 獨一無二的,比其他任何一個都更有趣。開啟終端輸入“say hello”試試吧!
5、softwareupdate
softwareupdate 命令提供了一種安裝 Apple 軟體更新方便快捷的方法。開啟終端,輸入“softwareupdate -i -a”,你的 Mac 就會安裝所有可以獲得的更新項。如果你只想安裝“推薦”更新項,那麼就輸入“softwareupdate -i -r”。
6、ipconfig
要說擷取你 Mac IP 位址最快、最簡單的方法,絕對是“ipconfig”,只需開啟終端輸入“ipconfig”。你能看到許多資訊,包括你網卡的 MAC 位址。我喜歡輸入“ipconfig | grep inet”僅回饋我電腦的 IP 資訊。你也可以通過輸入“ifconfig en0 down”來禁止一個網路連接(這裡舉了“en0”的例子);如果希望恢複,那麼就輸入“ipconfig en0 up”。這比使用系統預置要快上不少哦!
7、lipo
lipo 是一個在 Mac OS X 中處理通用程式(Universal Binaries)的工具。現在發售或者提供下載的許多(幾乎所有)程式都打上了“Universal”標誌,意味著它們同時具有 PowerPC 和 Intel 晶片能夠處理的代碼。不過既然你可能不在意其中的一個,你就能夠使用 lipo 來給你的程式“瘦身”。比如你想讓“便箋”應用程式只包含 Intel(i386)的代碼:
cd /Applications
lipo Stickies.app/Contents/MacOS/Stickies -thin i386 -output Stickies.app/Contents/MacOS/Stickies.i386
cd Stickies.app/Contents/MacOS/
rm Stickies
mv Stickies.i386 Stickies
8、screencapture
screencapture 提
pwd 顯示當前檔案所在的完整路徑
Mac OS下使用快速鍵控制重啟、登出和睡眠
2010
04.28
如需轉載,請註明出處!
WebSite: http://www.jjos.org/
作者: 薑江 [email protected]
QQ: 457283
Immediately Reboot Mac OS X
Control + Command + Eject
Immediately Shutdown Mac OS X
Command + Option + Control + Eject
Immediately Log User Out of Mac OS X
Control + Option + Shift + Q
Immediately Put Your Mac to Sleep
Command + Option + Eject (hold the buttons down for 2 seconds) and a bonus tip!
Immediately Shut Off Your Mac Display
Shift + Control + Eject
F12就是Eject鍵,長按即可…
mac os x 命令+10個常用命令列工具