Linux系統(tǒng)命令行的使用

常用命令及技巧

一、 通用命令:

1. date: print or set the system date and time

2. stty -a: ?可以查看或者打印控制字符(Ctrl-C, Ctrl-D, Ctrl-Z等)

3. passwd: ?print or set the system date and time (用passwd -h查看)

4. logout, login: ?登錄shell的登錄和注銷命令

5. pwd: print or set the system date and time

6. more, less, head tail: ?顯示或部分顯示文件內(nèi)容.

7. lp/lpstat/cancel, lpr/lpq/lprm: ?打印文件.

8. 更改文件權(quán)限: chmod u+x...

9. 刪除非空目錄: rm -fr dir

10.拷貝目錄: cp ?-R dir

11. fg jobid: 可以將一個(gè)后臺(tái)進(jìn)程放到前臺(tái)。

Ctrl-z 可以將前臺(tái)進(jìn)程掛起(suspend), 然后可以用bg jobid 讓其到后臺(tái)運(yùn)行。

job & 可以直接讓job直接在后臺(tái)運(yùn)行。

12. kill 的作用: send a signal to a process. eg: kill -9 發(fā)送的是SIG_KILL信號(hào)。。。 具體發(fā)送什么信號(hào) 可以通過 man kill 查看。

13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session顯示的sessionid, tpgid顯示前臺(tái)進(jìn)程組id, comm顯示命令名稱。)

二 、ubuntu常用命令:

1. dpkg: ?package manager for Debian

* 安裝: ?dpkg -i package

* 卸載: ?dpkg -r package

* 卸載并刪除配置文件: ?dpkg -P |--purge package

* 如果安裝一個(gè)包時(shí)。說依賴某些庫(kù)。 可以先 apt-get install somelib...

* 查看軟件包安裝內(nèi)容: ?dpkg -L package

* 查看文件由哪個(gè)軟件包提供: ?dpkg -S filename

* 另外 dpkg還有 dselect和aptitude 兩個(gè)frontend.

2. apt

* 安裝: ?apt-get install packs

* apt-get update : ?更新源

* apt-get upgrade: ?升級(jí)系統(tǒng)。

* apt-get dist-upgrade: ?智能升級(jí)。安裝新軟件包,刪除廢棄的軟件包

* apt-get -f install : ?-f == --fix broken 修復(fù)依賴

* apt-get autoremove: 自動(dòng)刪除無用的軟件

* apt-get remove packages : 刪除軟件

* apt-get remove package --purge 刪除包并清除配置文件

* 清除所以刪除包的殘余配置文件: ?dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P

* 安裝軟件時(shí)候包的臨時(shí)存放目錄 : ?/var/cache/apt/archives

* 清除該目錄: ?apt-get clean

* 清除該目錄的舊版本的軟件緩存: ? apt-get autoclean

* 查詢軟件some的依賴包: ?apt-cache depends some

* 查詢軟件some被哪些包依賴: ?apt-get rdepends some

* 搜索軟件: ?apt-cache search name|regexp

* 查看軟件包的作用: ?apt-cache show package

* 查看一個(gè)軟件的編譯依賴庫(kù): ?apt-cache showsrc packagename|grep Build-Depends

* 下載軟件的源代碼 : ?apt-get source packagename (注: sources.list 中應(yīng)該有 deb-src 源)

* 安裝軟件包源碼的同時(shí), 安裝其編譯環(huán)境 : apt-get build-dep packagename (有deb-src源)

* 如何將本地光盤加入安裝源列表: ?apt-cdrom add

3. 系統(tǒng)命令:

* 查看內(nèi)核版本: ?uname -a

* 查看ubuntu 版本: ?cat /etc/issue

* 查看網(wǎng)卡狀態(tài) : ?ethtool eth0

* 查看內(nèi)存,cpu的信息: ?cat /proc/meminfo ; cat /proc/cpuinfo

(/proc下面的有很多系統(tǒng)信息)

* 打印文件系統(tǒng)空間使用情況: ?df -h

* 查看硬盤分區(qū)情況: ?fdisk -l

* 產(chǎn)看文件大小: ?du -h filename;

* 查看目錄大小: ?du -hs dirname ; du -h dirname是查看目錄下所有文件的大小

* 查看內(nèi)存的使用: ?free -m|-g|-k

* 查看進(jìn)程: ?ps -e 或ps -aux -->顯示用戶

* 殺掉進(jìn)程: ?kill pid

* 強(qiáng)制殺掉: ?killall -9 processname

4. 網(wǎng)絡(luò)相關(guān):

* 配置 ADSL: ?sudo pppoeconf

* ADSL手工撥號(hào): ?sudo pon dsl-provider

* 激活 ADSL : ?sudo /etc/ppp/pppoe_on_boot

* 斷開 ADSL: ?sudo poff

* 根據(jù)IP查網(wǎng)卡地址: ?arping IP地址

* 產(chǎn)看本地網(wǎng)絡(luò)信息(包括ip等): ?ifconfig | ifconfig eth0

* 查看路由信息: netstat -r

* 關(guān)閉網(wǎng)卡: ?sudo ifconfig eth0 down

* 啟用網(wǎng)卡: ?sudo ifconfig eth0 up

* 添加一個(gè)服務(wù): ?sudo update-rc.d 服務(wù)名 defaults 99

* 刪除一個(gè)服務(wù): ?sudo update-rc.d 服務(wù)名 remove

* 臨時(shí)重啟一個(gè)服務(wù): ?/etc/init.d/服務(wù)名 restart

* 臨時(shí)關(guān)閉一個(gè)服務(wù): ?/etc/init.d/服務(wù)名 stop

* 臨時(shí)啟動(dòng)一個(gè)服務(wù): ?/etc/init.d/服務(wù)名 start

* 控制臺(tái)下顯示中文: ?sudo apt-get install zhcon

* 查找某個(gè)文件: ?whereis filename 或 find 目錄 -name 文件名

*通過ssh傳輸文件

scp -rp /path/filename username@remoteIP: /path #將本地文件拷貝到服務(wù)器上

scp -rp username@remoteIP: /path/filename /path #將遠(yuǎn)程文件從服務(wù)器下載到本地

5. 壓縮:

*解壓縮 a.tar.gz: ?tar zxvf a.tar.gz

*解壓縮 a.tar.bz2: tar jxvf a.tar.bz2

*壓縮aaa bbb目錄為xxx.tar.gz: ?tar zcvf xxx.tar.gz aaa bbb

*壓縮aaa bbb目錄為xxx.tar.bz2: ?tar jcvf xxx.tar.bz2 aaa bbb[6]

6. Nautilus:

特殊 URI 地址

* computer: /// - 全部掛載的設(shè)備和網(wǎng)絡(luò)

* network: /// - 瀏覽可用的網(wǎng)絡(luò)

* burn: /// - 一個(gè)刻錄 CDs/DVDs 的數(shù)據(jù)虛擬目錄

* smb: /// - 可用的 windows/samba 網(wǎng)絡(luò)資源

* x-nautilus-desktop: /// - 桌面項(xiàng)目和圖標(biāo)

* file: /// - 本地文件

* trash: /// - 本地回收站目錄

* ftp: ?// - FTP 文件夾

* ssh: ?// - SSH 文件夾

* fonts: /// - 字體文件夾,可將字體文件拖到此處以完成安裝

* themes: /// - 系統(tǒng)主題文件夾

* 顯示隱藏文件: ?Ctrl+h

* 顯示地址欄: ?Ctrl+l

* 查看已安裝字體: ?在nautilus的地址欄里輸入”fonts:///“,就可以查看本機(jī)所有的fonts[6]

7.補(bǔ)充部分:

* 查看本地所有的tpc,udp監(jiān)聽端口: ?netstat -tupln (t=tcp, u=udp, p=program, l=listen, n=numric)

* 通過man搜說相關(guān)命令: ?man -k keyword . eg: man -k user

* 或者用 apropos

* 統(tǒng)計(jì)文件所占用的實(shí)際磁盤空間: du (du - estimate file space usage)

* 統(tǒng)計(jì)文件中的字符,字節(jié)數(shù): ?wc -c/-l/-w (wc - print the number of newlines, words, and bytes in files)

* 查看文件的內(nèi)容:od -x/-c/.... (od - dump files in octal and other formats)

我認(rèn)為od最有用的就是文件的字節(jié)流了: ?od -t x1 filename

查看文件的 Ascii 碼形式: ?od -t c filename (其中統(tǒng)計(jì)信息最左邊的是: 字節(jié)數(shù))

* 查找命令所在文件的位置: ?which od 輸出: ?/usr/bin/od

查看該文件由哪個(gè)包提供: ? dpkg -S /usr/bin/od 輸出: ?coreutils: /usr/bin/od

再查看coreutils包的全部?jī)?nèi)容就知道了linux的核心命令: ?dpkg -L coreutils

然后 info coreutils 哈哈,認(rèn)真學(xué)吧, 滿世界都是命令!

* 可以用man 命令產(chǎn)看某個(gè)命令的所有section 的解釋: man -a tty

然后用q, 和next 轉(zhuǎn)換到下一個(gè)section的解釋

* bash 的好用的快捷鍵:

ctrl+a: 光標(biāo)移到行首。

ctrl+b: 光標(biāo)左移一個(gè)字母

ctrl+c:殺死當(dāng)前進(jìn)程。

ctrl+d: 退出當(dāng)前 Shell。

ctrl+e: 光標(biāo)移到行尾。

ctrl+h: 刪除光標(biāo)前一個(gè)字符,同 backspace 鍵相同。

ctrl+k: 清除光標(biāo)后至行尾的內(nèi)容。

ctrl+l: ?清屏,相當(dāng)于clear。

ctrl+r: ?搜索之前打過的命令。會(huì)有一個(gè)提示,根據(jù)你輸入的關(guān)鍵字進(jìn)行搜索bash的history

ctrl+u: ?清除光標(biāo)前至行首間的所有內(nèi)容。

ctrl+w: ?移除光標(biāo)前的一個(gè)單詞

ctrl+t: ?交換光標(biāo)位置前的兩個(gè)字符

ctrl+y: ?粘貼或者恢復(fù)上次的刪除

ctrl+d: ?刪除光標(biāo)所在字母;注意和backspace以及ctrl+h的區(qū)別,這2個(gè)是刪除光標(biāo)前的字符

ctrl+f: ?光標(biāo)右移

ctrl+z : ?把當(dāng)前進(jìn)程轉(zhuǎn)到后臺(tái)運(yùn)行,使用’ fg ‘命令恢復(fù)。比如top -d1 然后ctrl+z ,到后臺(tái),然后fg,重新恢復(fù)

* 快速粘貼:先在一個(gè)地方選中文字,在欲粘貼的地方按鼠標(biāo) 中鍵 即可。

* 等效中鍵:a 、按下滑輪等效于中鍵。b、同時(shí)按下鼠標(biāo) 左右鍵,等效于中鍵。

* 快速重啟X服務(wù): 同時(shí)按下: Alt + Ctrl + Backspace 三個(gè)鍵。

* 打開"運(yùn)行"窗口: 同時(shí)按下 Alt + F2 鍵。

* 戴屏: a、全屏:直接按下 PrtScr 鍵。

b、當(dāng)前窗口:同時(shí)按下 Alt + PrtScr 鍵。

c、延時(shí)戴屏:在 終端 或 "運(yùn)行"窗口中輸入命令: gnome-screenshot --delay 3 ,將延時(shí) 3 秒后戴屏。

* 直接將 文件管理器 中的文件拖到 GNOME終端 中就可以在終端中得到完整的路徑名

8.ulimit

ulimit:顯示(或設(shè)置)用戶可以使用的資源的限制(limit),這限制分為軟限制(當(dāng)前限制)和硬限制(上限),其中硬限制是軟限制的上限值,應(yīng)用程序在運(yùn)行過程中使用的系統(tǒng)資源不超過相應(yīng)的軟限制,任何的超越都導(dǎo)致進(jìn)程的終止。

ulimited 不限制用戶可以使用的資源,但本設(shè)置對(duì)可打開的最大文件數(shù)(max open files)

和可同時(shí)運(yùn)行的最大進(jìn)程數(shù)(max user processes)無效

-a 列出所有當(dāng)前資源極限

-c 設(shè)置core文件的最大值.單位:blocks

-d 設(shè)置一個(gè)進(jìn)程的數(shù)據(jù)段的最大值.單位:kbytes

-f ?Shell 創(chuàng)建文件的文件大小的最大值,單位:blocks

-h ?指定設(shè)置某個(gè)給定資源的硬極限。如果用戶擁有 root 用戶權(quán)限,可以增大硬極限。任何用戶均可減少硬極限

-l ?可以鎖住的物理內(nèi)存的最大值

-m 可以使用的常駐內(nèi)存的最大值,單位:kbytes

-n ?每個(gè)進(jìn)程可以同時(shí)打開的最大文件數(shù)

-p ?設(shè)置管道的最大值,單位為block,1block=512bytes

-s ?指定堆棧的最大值:?jiǎn)挝唬簁bytes

-S ?指定為給定的資源設(shè)置軟極限。軟極限可增大到硬極限的值。如果 -H 和 -S 標(biāo)志均未指定,極限適用于以上二者

-t ?指定每個(gè)進(jìn)程所使用的秒數(shù),單位:seconds

-u ?可以運(yùn)行的最大并發(fā)進(jìn)程數(shù)

-v ?Shell可使用的最大的虛擬內(nèi)存,單位:kbytes

eg: ?ulimit -c 1000(可以先通過ulimit -c 查看原來的值)[6]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容