天天看點

linux 常用指令及技巧

轉載: http://linux.cn/blog-15563-5819.html 

linux 常用指令及技巧:

linux 常用指令總結: 

一。 通用指令: 

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: 顯示或部分顯示檔案内容. 

7. lp/lpstat/cancel, lpr/lpq/lprm: 列印檔案. 

8. 更改檔案權限: chmod u+x... 

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

10.拷貝目錄: cp -R dir 

11. fg jobid :可以将一個背景程序放到前台。 

  Ctrl-z 可以将前台程序挂起(suspend), 然後可以用bg jobid 讓其到背景運作。

  job & 可以直接讓job直接在背景運作。

12. kill 的作用: send a signal to a process. eg: kill -9 發送的是SIG_KILL信号。。。 具體發送什麼信号   可以通過 man kill 檢視。

13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session顯示的sessionid, tpgid顯示前台程序組id, comm顯示指令名稱。)

二 .ubuntu常用指令:

1. dpkg: package manager for Debian 

* 安裝: dpkg -i package 

* 解除安裝: dpkg -r package 

* 解除安裝并删除配置檔案: dpkg -P |--purge package 

* 如果安裝一個包時。說依賴某些庫。 可以先 apt-get install somelib... 

* 檢視軟體包安裝内容 :dpkg -L package 

* 檢視檔案由哪個軟體包提供: dpkg -S filename

* 另外 dpkg還有 dselect和aptitude 兩個frontend.

2. apt 

* 安裝: apt-get install packs 

* apt-get update : 更新源 

* apt-get upgrade: 更新系統。 

* apt-get dist-upgrade: 智能更新。安裝新軟體包,删除廢棄的軟體包 

* apt-get -f install : -f == --fix broken 修複依賴 

* apt-get autoremove: 自動删除無用的軟體 

* apt-get remove packages :删除軟體 

* apt-get remove package --purge 删除包并清除配置檔案 

* 清除是以删除包的殘餘配置檔案: dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P 

* 安裝軟體時候包的臨時存放目錄 : /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

* 檢視一個軟體的編譯依賴庫: apt-cache showsrc packagename|grep Build-Depends 

* 下載下傳軟體的源代碼 : apt-get source packagename (注: sources.list 中應該有 deb-src 源)

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

* 如何将本地CD光牒加入安裝源清單: apt-cdrom add

3. 系統指令: 

* 檢視核心版本: uname -a 

* 檢視ubuntu 版本: cat /etc/issue 

* 檢視網卡狀态 : ethtool eth0 

* 檢視記憶體,cpu的資訊: cat /proc/meminfo ; cat /proc/cpuinfo 

(/proc下面的有很多系統資訊) 

* 列印檔案系統空間使用情況: df -h 

* 檢視硬碟分區情況: fdisk -l 

* 産看檔案大小: du -h filename; 

* 檢視目錄大小: du -hs dirname ; du -h dirname是檢視目錄下所有檔案的大小 

* 檢視記憶體的使用: free -m|-g|-k 

* 檢視程序: ps -e 或ps -aux -->顯示使用者 

* 殺掉程序: kill pid 

* 強制殺掉: killall -9 processname 

4. 網絡相關:   

* 配置 ADSL:   sudo pppoeconf 

* ADSL手工撥号: sudo pon dsl-provider 

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

* 斷開 ADSL:   sudo poff 

* 根據IP查網卡位址: arping IP位址 

* 産看本地網絡資訊(包括ip等): ifconfig | ifconfig eth0 

* 檢視路由資訊: netstat -r 

* 關閉網卡: sudo ifconfig eth0 down 

* 啟用網卡: sudo ifconfig eth0 up 

* 添加一個服務: sudo update-rc.d 服務名 defaults 99 

* 删除一個服務: sudo update-rc.d 服務名 remove 

* 臨時重新開機一個服務: /etc/init.d/服務名 restart 

* 臨時關閉一個服務: /etc/init.d/服務名 stop 

* 臨時啟動一個服務: /etc/init.d/服務名 start 

* 控制台下顯示中文: sudo apt-get install zhcon 

* 查找某個檔案: whereis filename 或 find 目錄 -name 檔案名 

*通過ssh傳輸檔案 

scp -rp /path/filename username@remoteIP:/path #将本地檔案拷貝到伺服器上 

scp -rp username@remoteIP:/path/filename /path #将遠端檔案從伺服器下載下傳到本地 

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. Nautilus: 

特殊 URI 位址 

* computer:/// - 全部挂載的裝置和網絡 

* network:/// - 浏覽可用的網絡 

* burn:/// - 一個刻錄 CDs/DVDs 的資料虛拟目錄 

* smb:/// - 可用的 windows/samba 網絡資源 

* x-nautilus-desktop:/// - 桌面項目和圖示 

* file:/// - 本地檔案 

* trash:/// - 本地資源回收筒目錄 

* ftp:// - FTP 檔案夾 

* ssh:// - SSH 檔案夾 

* fonts:/// - 字型檔案夾,可将字型檔案拖到此處以完成安裝 

* themes:/// - 系統主題檔案夾 

* 顯示隐藏檔案: Ctrl+h 

* 顯示位址欄: Ctrl+l 

* 檢視已安裝字型: 在nautilus的位址欄裡輸入”fonts:///“,就可以檢視本機所有的fonts

7.補充部分:

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

* 通過man搜說相關指令: man -k keyword . eg: man -k user

* 或者用 apropos

* 統計檔案所占用的實際磁盤空間: du   (du - estimate file space usage)

* 統計檔案中的字元,位元組數: wc -c/-l/-w   (wc - print the number of newlines, words, and bytes in files)

* 檢視檔案的内容: od -x/-c/....   (od - dump files in octal and other formats)

    我認為od最有用的就是檔案的位元組流了: od -t x1 filename

    檢視檔案的 Ascii 碼形式: od -t c filename (其中統計資訊最左邊的是: 位元組數)

* 查找指令所在檔案的位置: which od 輸出: /usr/bin/od

    檢視該檔案由哪個包提供: dpkg -S /usr/bin/od   輸出: coreutils: /usr/bin/od

    再檢視coreutils包的全部内容就知道了linux的核心指令: dpkg -L coreutils

    然後 info coreutils    哈哈,認真學吧, 滿世界都是指令!

* 可以用man 指令産看某個指令的所有section 的解釋: man -a tty

    然後用q,和next 轉換到下一個section的解釋

  * bash 的好用的快捷鍵:

  ctrl+a:光标移到行首。

  ctrl+b:光标左移一個字母

  ctrl+c:殺死目前程序。

  ctrl+d:退出目前 Shell。

  ctrl+e:光标移到行尾。

  ctrl+h:删除光标前一個字元,同 backspace 鍵相同。

  ctrl+k:清除光标後至行尾的内容。

  ctrl+l:清屏,相當于clear。

  ctrl+r:搜尋之前打過的指令。會有一個提示,根據你輸入的關鍵字進行搜尋bash的history

  ctrl+u: 清除光标前至行首間的所有内容。

  ctrl+w: 移除光标前的一個單詞

  ctrl+t: 交換光标位置前的兩個字元

  ctrl+y: 粘貼或者恢複上次的删除

  ctrl+d: 删除光标所在字母;注意和backspace以及ctrl+h的差別,這2個是删除光标前的字元

  ctrl+f: 光标右移

  ctrl+z : 把目前程序轉到背景運作,使用’ fg ‘指令恢複。比如top -d1 然後ctrl+z ,到背景,然後fg,重新恢複

* 快速粘貼:先在一個地方選中文字,在欲粘貼的地方按滑鼠 中鍵 即可。

* 等效中鍵:a 、按下滑輪等效于中鍵。b、同時按下滑鼠 左右鍵,等效于中鍵。

* 快速重新開機X服務: 同時按下: Alt + Ctrl + Backspace 三個鍵。

* 打開"運作"視窗: 同時按下 Alt + F2 鍵。

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

  b、目前視窗:同時按下 Alt + PrtScr 鍵。

  c、延時戴屏:在 終端 或 "運作"視窗中輸入指令: gnome-screenshot --delay 3 ,将延時 3 秒後戴屏。

* 直接将 檔案管理器 中的檔案拖到 GNOME終端 中就可以在終端中得到完整的路徑名。

8.  ulimit 

ulimit:顯示(或設定)使用者可以使用的資源的限制(limit),這限制分為軟限制(目前限制)和硬限制(上限),其中硬限制是軟限制的上限值,應用程式在運作過程中使用的系統資源不超過相應的軟限制,任何的超越都導緻程序的終止。

ulimited      不限制使用者可以使用的資源,但本設定對可打開的最大檔案數(max open files)

和可同時運作的最大程序數(max user processes)無效

-a      列出所有目前資源極限

-c      設定core檔案的最大值.機關:blocks

-d      設定一個程序的資料段的最大值.機關:kbytes

-f      Shell 建立檔案的檔案大小的最大值,機關:blocks

-h      指定設定某個給定資源的硬極限。如果使用者擁有 root 使用者權限,可以增大硬極限。任何使用者均可減少硬極限

-l      可以鎖住的實體記憶體的最大值

-m      可以使用的常駐記憶體的最大值,機關:kbytes

-n      每個程序可以同時打開的最大檔案數

-p      設定管道的最大值,機關為block,1block=512bytes

-s      指定堆棧的最大值:機關:kbytes

-S      指定為給定的資源設定軟極限。軟極限可增大到硬極限的值。如果 -H 和 -S 标志均未指定,極限适用于以上二者

-t      指定每個程序所使用的秒數,機關:seconds

-u      可以運作的最大并發程序數

繼續閱讀