首頁技術文章正文

c++培訓之Linux系統(tǒng)常用命令

更新時間:2017-04-14 來源:黑馬程序員C/C++培訓學院 瀏覽量:

一. 通用命令:[6]
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 發(fā)送的是SIG_KILL信號。。。 具體發(fā)送什么信號 可以通過 man kill 查看。
  13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session顯示的sessionid, tpgid顯示前臺進程組id, comm顯示命令名稱。)
  二 .ubuntu常用命令:[6]
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: 升級系統(tǒng)。
  * 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 源)
  * 安裝軟件包源碼的同時, 安裝其編譯環(huán)境 :apt-get build-dep packagename (有deb-src源)
  * 如何將本地光盤加入安裝源列表: apt-cdrom add
  3. 系統(tǒng)命令:
  * 查看內核版本: uname -a
  * 查看ubuntu 版本: cat /etc/issue
  * 查看網(wǎng)卡狀態(tài) : ethtool eth0
  * 查看內存,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是查看目錄下所有文件的大小
  * 查看內存的使用: free -m|-g|-k
  * 查看進程: ps -e 或ps -aux -->顯示用戶
  * 殺掉進程: kill pid
  * 強制殺掉: killall -9 processname
  4. 網(wǎng)絡相關: 
  * 配置 ADSL: sudo pppoeconf
  * ADSL手工撥號: sudo pon dsl-provider
  * 激活 ADSL : sudo /etc/ppp/pppoe_on_boot
  * 斷開 ADSL: sudo poff
  * 根據(jù)IP查網(wǎng)卡地址: arping IP地址
  * 產(chǎn)看本地網(wǎng)絡信息(包括ip等): ifconfig | ifconfig eth0
  * 查看路由信息: netstat -r
  * 關閉網(wǎng)卡: sudo ifconfig eth0 down
  * 啟用網(wǎng)卡: 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]
6. Nautilus:
  特殊 URI 地址
  * computer:/// - 全部掛載的設備和網(wǎng)絡
  * network:/// - 瀏覽可用的網(wǎng)絡
  * burn:/// - 一個刻錄 CDs/DVDs 的數(shù)據(jù)虛擬目錄
  * smb:/// - 可用的 windows/samba 網(wǎng)絡資源
  * x-nautilus-desktop:/// - 桌面項目和圖標
  * file:/// - 本地文件
  * trash:/// - 本地回收站目錄
  * ftp:// - FTP 文件夾
  * ssh:// - SSH 文件夾
  * fonts:/// - 字體文件夾,可將字體文件拖到此處以完成安裝
  * themes:/// - 系統(tǒng)主題文件夾
  * 顯示隱藏文件: Ctrl+h
  * 顯示地址欄: Ctrl+l
  * 查看已安裝字體: 在nautilus的地址欄里輸入”fonts:///“,就可以查看本機所有的fonts[6]
7.補充部分:
* 查看本地所有的tpc,udp監(jiān)聽端口: netstat -tupln (t=tcp, u=udp, p=program, l=listen, n=numric)
  * 通過man搜說相關命令: man -k keyword . eg: man -k user
  * 或者用 apropos
  * 統(tǒng)計文件所占用的實際磁盤空間: du (du - estimate file space usage)
  * 統(tǒng)計文件中的字符,字節(jié)數(shù): 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最有用的就是文件的字節(jié)流了: od -t x1 filename
  查看文件的 Ascii 碼形式: od -t c filename (其中統(tǒng)計信息最左邊的是: 字節(jié)數(shù))
  * 查找命令所在文件的位置: which od 輸出: /usr/bin/od
  查看該文件由哪個包提供: dpkg -S /usr/bin/od 輸出: coreutils: /usr/bin/od
  再查看coreutils包的全部內容就知道了linux的核心命令: dpkg -L coreutils
  然后 info coreutils 哈哈,認真學吧, 滿世界都是命令!
  * 可以用man 命令產(chǎn)看某個命令的所有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:搜索之前打過的命令。會有一個提示,根據(jù)你輸入的關鍵字進行搜索bash的history
  ctrl+u: 清除光標前至行首間的所有內容。
  ctrl+w: 移除光標前的一個單詞
  ctrl+t: 交換光標位置前的兩個字符
  ctrl+y: 粘貼或者恢復上次的刪除
  ctrl+d: 刪除光標所在字母;注意和backspace以及ctrl+h的區(qū)別,這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終端 中就可以在終端中得到完整的路徑名。[6]  8.ulimit
  ulimit:顯示(或設置)用戶可以使用的資源的限制(limit),這限制分為軟限制(當前限制)和硬限制(上限),其中硬限制是軟限制的上限值,應用程序在運行過程中使用的系統(tǒng)資源不超過相應的軟限制,任何的超越都導致進程的終止。
  ulimited 不限制用戶可以使用的資源,但本設置對可打開的最大文件數(shù)(max open files)
  和可同時運行的最大進程數(shù)(max user processes)無效
  -a 列出所有當前資源極限
  -c 設置core文件的最大值.單位:blocks
  -d 設置一個進程的數(shù)據(jù)段的最大值.單位:kbytes
  -f Shell 創(chuàng)建文件的文件大小的最大值,單位:blocks
  -h 指定設置某個給定資源的硬極限。如果用戶擁有 root 用戶權限,可以增大硬極限。任何用戶均可減少硬極限
  -l 可以鎖住的物理內存的最大值
  -m 可以使用的常駐內存的最大值,單位:kbytes
  -n 每個進程可以同時打開的最大文件數(shù)
  -p 設置管道的最大值,單位為block,1block=512bytes
  -s 指定堆棧的最大值:單位:kbytes
  -S 指定為給定的資源設置軟極限。軟極限可增大到硬極限的值。如果 -H 和 -S 標志均未指定,極限適用于以上二者
  -t 指定每個進程所使用的秒數(shù),單位:seconds
  -u 可以運行的最大并發(fā)進程數(shù)
  -v Shell可使用的最大的虛擬內存,單位:kbytes
  eg: ulimit -c 1000(可以先通過ulimit -c 查看原來的值)



 本文版權歸黑馬程序員C++培訓學院所有,歡迎轉載,轉載請注明作者出處。謝謝!
作者:黑馬程序員C/C++培訓學院
首發(fā):http://low-budgetmovie.com/news/c.html 
分享到:
在線咨詢 我要報名
和我們在線交談!