終端的常用操作命令

由于自己在使用終端的時候有一些指令經常忘記,所以從網上收集了一些。并記錄下來

OSX的文件操作系統

OSX采用的是Unix文件系統,所有的文件都在根目錄下面,所以不再要有Windows下的盤符概念。

我們桌面上看到的硬盤都是掛在/Volumes下。比如在我們的桌面上看到一個USBHD移動硬盤,桌面上就會顯示一個圖標,但是它實際上是在哪里的呢?在終端執行ls /Volumes/USBHD,看看顯示的是不是這個移動硬盤的內容。

終端是識別大小寫的Desktop和desktop不是同一個問件

如何進入命令的操作模式在圖形界面下,用finder打開應用程序,并找到終端的圖標,如果連圖形界面都進不去的話,在開機時按F8,用-s參數啟動,然后輸入命令mount -uw/

獲得權限:為了防止操作系統破壞,在用戶狀態下時沒有權限操作系統中亞的文件,所以需要取得root權限sudo - s,然后再輸入密碼,再輸入密碼時沒有任何回顯,甚至lian*號都沒有。但是不要緊 ,只管輸入就行。

常用操作

列出文件

ls 參數 目錄名

例: 想看看跟目錄下有什么,

ls /

想看看驅動目錄下有什么,

ls /System/Library/Extensions(記得ls后面要加一個空格不然找不到的)

參數 -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

顯示當前系統活動的總信息

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容