ubuntu常用命令及部分快捷鍵

轉自別人的博客,但原文地址找不到了。
---------------------------內容較多,頁內查找請按Ctrl+F-----------------------------------

查看系統和硬件相關信息的命令簡介

查看內核/操作系統/CPU信息

# uname -a
# head -n 1 /etc/issue # 查看操作系統版本

# cat /etc/redhat-release # 查看操作系統版本(redhat,centos,fedora)

# cat /proc/cpuinfo # 查看CPU信息

# hostname # 查看計算機名

# lspci -tv# 列出所有PCI設備

# lsusb -tv# 列出所有USB設備

# lsmod# 列出加載的內核模塊

# env # 查看環境變量資源

# free -m# 查看內存使用量和交換區使用量

# df -h # 查看各分區使用情況

# du -sh <目錄名> # 查看指定目錄的大小

# grep MemTotal /proc/meminfo # 查看內存總量

# grep MemFree /proc/meminfo # 查看空閑內存量

# uptime # 查看系統運行時間、用戶數、負載

# cat /proc/loadavg # 查看系統負載磁盤和分區

# mount | column -t# 查看掛接的分區狀態

# fdisk -l # 查看所有分區

# swapon -s # 查看所有交換分區

# hdparm -i /dev/hda # 查看磁盤參數(僅適用于IDE設備)

# dmesg | grep IDE # 查看啟動時IDE設備檢測狀況網絡

# ifconfig # 查看所有網絡接口的屬性

# iptables -L # 查看防火墻設置

# route -n # 查看路由表

# netstat -lntp # 查看所有監聽端口

# netstat -antp # 查看所有已經建立的連接

# netstat -s # 查看網絡統計信息進程

# ps -ef # 查看所有進程

# top # 實時顯示進程狀態用戶

# w # 查看活動用戶

# id <用戶名> # 查看指定用戶信息

# last # 查看用戶登錄日志

# cut -d: -f1 /etc/passwd # 查看系統所有用戶

# cut -d: -f1 /etc/group # 查看系統所有組

# crontab -l # 查看當前用戶的計劃任務服務

# chkconfig –list # 列出所有系統服務

# chkconfig –list | grep on # 列出所有啟動的系統服務程序

# rpm -qa # 查看所有安裝的軟件包

VI模式切換和退出

進入vi編輯文件內容:

vi 文件名

vi 目錄/文件名

vi進入編輯模式:

Shift+字母i

從編輯模式返回命令模式:

ESC

從命令模式vi退出:

:w 保存文件但不退出vi

:w file 將修改另外保存到file中,不退出vi

:w! 強制保存,不推出vi

:wq 保存文件并退出vi

:wq! 強制保存文件,并退出vi

:q 不保存文件,退出vi

:q! 不保存文件,強制退出vi

:e! 放棄所有修改,從上次保存文件開始再編輯

注意:千萬別將英文冒號”:”敲成中文冒號”:”。

VI前進后退操作

在vi中按u可以撤銷一次操作

u 撤銷上一步的操作

Ctrl+r 恢復上一步被撤銷的操作

注意:

如果你輸入“u”兩次,你的文本恢復原樣,那應該是你的Vim被配置在Vi兼容模式了。

重做

如果你撤銷得太多,你可以輸入CTRL-R(redo)回退前一個命令。換句話說,它撤銷一個撤銷。要看執行的例子,輸入CTRL-R兩次。字符A和它后面的空格就出現了:

young intelligent turtle

有一個特殊版本的撤銷命令:“U”(行撤銷)。行撤銷命令撤銷所有在前一個編輯行

上的操作。 輸入這些命令兩次取消前一個“U”:

A very intelligent turtle

xxxx 刪除very

A intelligent turtle

xxxxxx 刪除turtle

A intelligent

用“U”恢復行

A very intelligent turtle

用“u”撤銷“U”

A intelligent

“U”命令自己改變自己,“u”命令撤銷操作,CTRL-R命令重做操作。這有點亂,但不用

擔心,用“u”和CTRL-R命令你可以切換到任何狀態。

流行的文本編輯器通常都有前進和后退功能,可以在文件中曾經瀏覽過的位置之間來回移動。在 vim 中使用 Ctrl-O 執行后退,使用 Ctrl-I 執行前進。

相關幫助: :help CTRL-O :help CTRL-I :help jump-motions

VI查找內容

使用vi編輯器編輯長文件時,常常是頭昏眼花,也找不到需要更改的內容。

這時,使用查找功能尤為重要。

方法如下:

1、命令模式下輸入“/字符串”,例如“/Section 3”。

2、如果查找下一個,按“n”即可。

要自當前光標位置向上搜索,請使用以下命令:

/pattern Enter

其中,pattern表示要搜索的特定字符序列。

要自當前光標位置向下搜索,請使用以下命令:

?pattern Enter

Linux文件權限介紹

r:read就是讀權限 –數字4表示

w:write就是寫權限 –數字2表示

x:excute就是執行權限 –數字1表示

權限表示一共需要占9個字符的:— — —

前三個字符表示用戶權限,中間三個表示用戶所在的組權限,最后三個表示其他用戶權限

例子:rw-r–r–

rw-是說用戶有讀、寫權,沒有運行權,接著的r–表示用戶組只有讀權限,沒有寫入、運行權,最后的r–指其他用戶只有讀權限,沒有寫入、運行權。

用數字表示就是644。

例子:777

777就是rwxrwxrwx,意思是用戶、用戶組和其他用戶都有最高權限。
Linux下scp的用法

scp命令

scp就是secure copy,一個在linux下用來進行遠程拷貝文件的命令。

有時我們需要獲得遠程服務器上的某個文件,該服務器既沒有配置ftp服務器,也沒有做共享,無法通過常規途徑獲得文件時,只需要通過簡單的scp命令便可達到目的。

將本機文件復制到遠程服務器上

scp /home/administrator/news.txt root@192.168.6.129:/etc/squid

/home/administrator/ 本地文件的絕對路徑

news.txt 要復制到服務器上的本地文件

root 通過root用戶登錄到遠程服務器(也可以使用其他擁有同等權限的用戶)

192.168.6.129 遠程服務器的ip地址(也可以使用域名或機器名)

/etc/squid 將本地文件復制到位于遠程服務器上的路徑

將遠程服務器上的文件復制到本機

scp remote@www.abc.com:/usr/local/sin.sh /home/administrator

remote 通過remote用戶登錄到遠程服務器(也可以使用其他擁有同等權限的用戶)

www.abc.com 遠程服務器的域名(當然也可以使用該服務器ip地址)

/usr/local/sin.sh 欲復制到本機的位于遠程服務器上的文件

/home/administrator 將遠程文件復制到本地的絕對路徑

注意兩點:

1.如果遠程服務器防火墻有特殊限制,scp便要走特殊端口,具體用什么端口視情況而定,命令格式如下:

scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator

2.使用scp要注意所使用的用戶是否具有可讀取遠程服務器相應文件的權限。

壓縮和解壓

zip命令

解壓1:unzip FileName.zip

解壓2:unzip FileName.zip -d TargetDir

壓縮1:zip -r TargetDir/FileName.zip DirName

壓縮2:zip -r TargetDir/FileName.zip DirName/*

壓縮3:zip -r TargetDir/FileName.zip File1 File2 File3

注意,zip解壓適用于解壓jar文件

tar命令

解包:tar zxvf FileName.tar

打包:tar czvf FileName.tar DirName

.tar.gz 和 .tgz

解壓:tar zxvf FileName.tar.gz

壓縮:tar zcvf FileName.tar.gz DirName

.tar.bz

解壓:tar jxvf FileName.tar.bz

.tar.bz2

解壓:tar jxvf FileName.tar.bz2

壓縮:tar jcvf FileName.tar.bz2 DirName

.tar.Z

解壓:tar Zxvf FileName.tar.Z

壓縮:tar Zcvf FileName.tar.Z DirName

gz命令

解壓1:gunzip FileName.gz

解壓2:gzip -d FileName.gz

壓縮:gzip FileName

bz2命令

解壓1:bzip2 -d FileName.bz2

解壓2:bunzip2 FileName.bz2

壓縮: bzip2 -z FileName

bz命令

解壓1:bzip2 -d FileName.bz

解壓2:bunzip2 FileName.bz

Z命令

解壓:uncompress FileName.Z

壓縮:compress FileName

7z命令(如果沒有7z命令請先執行“yum install p7zip”)

解壓:7z x FileName.7z -o/home/zhichao

//注意,x參數解壓會自動生成與壓縮文件名相同的目錄,-o表示輸出目錄,其與目錄路徑之間沒有空格,上面命令會解壓FileName.7z到home/zhichao/FileName目錄中。

壓縮:7z a FileName.7z DirName

grep命令

grep命令使用正則表達式檢索符合條件的內容,一般與其他命令組合使用。

格式:

grep 參數 條件

參數:

-a --text #不要忽略二進制的數據。

-A<顯示行數> --after-context=<顯示行數> #除了顯示符合范本樣式的那一列之外,并顯示該行之后的內容。

-b --byte-offset #在顯示符合樣式的那一行之前,標示出該行第一個字符的編號。

-B<顯示行數> --before-context=<顯示行數> #除了顯示符合樣式的那一行之外,并顯示該行之前的內容。

-c --count #計算符合樣式的列數。

-C<顯示行數> --context=<顯示行數>或-<顯示行數> #除了顯示符合樣式的那一行之外,并顯示該行之前后的內容。

-d <動作> --directories=<動作> #當指定要查找的是目錄而非文件時,必須使用這項參數,否則grep指令將回報信息并停止動作。

-e<范本樣式> --regexp=<范本樣式> #指定字符串做為查找文件內容的樣式。

-E --extended-regexp #將樣式為延伸的普通表示法來使用。

-f<規則文件> --file=<規則文件> #指定規則文件,其內容含有一個或多個規則樣式,讓grep查找符合規則條件的文件內容,格式為每行一個規則樣式。

-F --fixed-regexp #將樣式視為固定字符串的列表。

-G --basic-regexp #將樣式視為普通的表示法來使用。

-h --no-filename #在顯示符合樣式的那一行之前,不標示該行所屬的文件名稱。

-H --with-filename #在顯示符合樣式的那一行之前,表示該行所屬的文件名稱。

-i --ignore-case #忽略字符大小寫的差別。

-l --file-with-matches #列出文件內容符合指定的樣式的文件名稱。

-L --files-without-match #列出文件內容不符合指定的樣式的文件名稱。

-n --line-number #在顯示符合樣式的那一行之前,標示出該行的列數編號。

-q --quiet或--silent #不顯示任何信息。

-r --recursive #此參數的效果和指定“-d recurse”參數相同。

-s --no-messages #不顯示錯誤信息。

-v --revert-match #顯示不包含匹配文本的所有行。

-V --version #顯示版本信息。

-w --word-regexp #只顯示全字符合的列。

-x --line-regexp #只顯示全列符合的列。

-y #此參數的效果和指定“-i”參數相同。

示例:

從文件info.txt中讀取關鍵詞system進行搜索

cat /home/usr/download/info.txt | grep -f system

從文件info.txt中讀取關鍵詞system進行搜索并顯示行號

cat /home/usr/download/info.txt | grep -nf system

cat命令

cat命令用來顯示文件內容,或者將幾個文件連接起來顯示,或者從標準輸入讀取內容并顯示,它常與重定向符號配合使用。

格式:

cat 參數 文件

參數:

-A, --show-all  等價于 -vET

-b, --number-nonblank 對非空輸出行編號

-e   等價于 -vE

-E, --show-ends  在每行結束處顯示 $

-n, --number 對輸出的所有行編號,由1開始對所有輸出的行數編號

-s, --squeeze-blank 有連續兩行以上的空白行,就代換為一行的空白行

-t   與 -vT 等價

-T, --show-tabs  將跳格字符顯示為 ^I

-u   (被忽略)

-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

示例:

把 log.php 的文件內容加上行號后輸出到new_log.php這個文件中

cat -n /data/www/project/log.php /data/www/project/new_log.php

ps命令

ps命令是process status的縮寫,顧名思義就是查看系統中所有進程狀態狀態。

ps命令查看的程序狀態并不是動態連續的,如果想對進程實施監控,請用top命令。

如果直接用ps命令,會顯示所有進程的狀態,通常結合grep命令查看某進程的狀態。

格式:

ps 參數

參數:

a 顯示所有進程

-a 顯示同一終端下的所有程序

-A 顯示所有進程

c 顯示進程的真實名稱

-N 反向選擇

-e 等于“-A”

e 顯示環境變量

f 顯示程序間的關系

-H 顯示樹狀結構

r 顯示當前終端的進程

T 顯示當前終端的所有程序

u 指定用戶的所有進程

-au 顯示較詳細的資訊

-aux 顯示所有包含其他使用者的行程

示例:

顯示java相關程序

ps aux|grep java

顯示httpd相關程序

ps aux|grep httpd

查看正在使用8080端口的程序

ps -ef|grep 8080

fuser 命令

fuser用于查找正在使用指定的某個文件、掛載點、網絡端口的進程的詳細信息。

格式:

fuser 參數 文件或掛載點或網絡端口

參數:

a 顯示所有命令行中指定的文件,默認情況下被訪問的文件才會被顯示。

-c 和-m一樣,用于POSIX兼容。

-d 暗示使用了 -c 和 -x 標志。關于任何與文件系統(自父目錄刪除的)無鏈接的打開文件的報告。當與 -V 標志一起使用時,它也會報告被刪除文件的節點號和大小。

-f 僅對文件的打開實例報告。

-i 殺掉進程之前詢問用戶,如果沒有-k這個選項會被忽略。

-k 殺掉訪問文件的進程。如果沒有指定-signal就會發送SIGKILL信號。

-l 列出所有已知的信號名稱。

-m name 指定一個掛載文件系統上的文件或者被掛載的塊設備(名稱name)。這樣所有訪問這個文件或者文件系統的進程都會被列出來。如果指定的是一個目錄會自動轉換成,并使用所有掛載在那個目錄下面的文件系統。

-n space 指定一個不同的命名空間(space).這里支持不同的空間文件(文件名,此處默認)、tcp(本地tcp端口)、udp(本地udp端口)。對于端口, 可以指定端口號或者名稱,如果不會引起歧義那么可以使用簡單表示的形式,例如:name/space (即形如:80/tcp之類的表示)。

-s 靜默模式,這時候-u,-v會被忽略。-a不能和-s一起使用。

-signal 使用指定的信號,而不是用SIGKILL來殺掉進程。可以通過名稱或者號碼來表示信號(例如-HUP,-1),這個選項要和-k一起使用,否則會被忽略。

-u 在每個PID后面添加進程擁有者的用戶名稱。

-v 詳細模式。輸出似ps命令的輸出,包含PID,USER,COMMAND等許多域,如果是內核訪問的那么PID為kernel. -V 輸出版本號。

-x 與 -c 或 -f 連用,報告除標準 fuser 輸出以外的可執行的和可載入的對象。

-4 使用IPV4套接字,不能和-6一起應用,只在-n的tcp和udp的命名存在時不被忽略。

-6 使用IPV6套接字,不能和-4一起應用,只在-n的tcp和udp的命名存在時不被忽略。

示例:

查看和關閉正在使用readme.txt文件的程序

fuser -m -v readme.txt

fuser -m -k readme.txt

查看和關閉正在使用80端口的程序

fuser -n -v tcp 80

fuser -n -k tcp 80

chown命令

chown命令將指定文件或文件夾的擁有者改為指定的用戶或組,用戶可以是用戶名或者用戶ID,組可以是組名或者組ID,文件是以空格分開的要改變權限的文件列表,支持通配符。

格式:

chown 參數 用戶 文件

參數:

-c 顯示更改的部分的信息

-f 忽略錯誤信息

-h 修復符號鏈接

-R 處理指定目錄以及其子目錄下的所有文件

-v 顯示詳細的處理信息

-deference 作用于符號鏈接的指向,而不是鏈接文件本身

示例:

將目錄/data/www/project/下的所有文件和目錄的擁有者都修改為apache賬戶。

chown -R apache.apache /data/www/project/

chmod命令

chmod命令用于改變linux系統文件或目錄的訪問權限,用它控制文件或目錄的訪問權限。

Linux系統中的每個文件和目錄都有訪問許可權限,用它來確定誰可以通過何種方式對文件和目錄進行訪問和操作。

格式:

chmod 參數 權限模式 文件

參數

-c 當發生改變時,報告處理信息

-f 錯誤信息不輸出

-R 處理指定目錄以及其子目錄下的所有文件

-v 運行時顯示詳細處理信息

示例:

將目錄/data/www/project/下的所有文件和目錄的訪問權限修改為“當前用戶、當前用戶組和其他用戶都可讀可寫可執行”的權限。

chown -R 777 /data/www/project/

kill命令

kill命令用于關閉指定進程。

格式:

kill 參數 信號 進程ID

參數:

-s 指定發送信號

-l 根據信號名顯示信號編號,若果不加信號的編號參數,則使用“-l”參數會列出全部的信號名稱

-a 當處理當前進程時,不限制命令名和進程號的對應關系

-p 指定kill 命令只打印相關進程的進程號,而不發送任何信號

-u 指定用戶

信號:

信號名 信號編號 信號含義

HUP 1 終端斷線

INT 2 中斷

QUIT 3 退出

TERM 15 終止

KILL 9 強制終止

CONT 18 繼續(與STOP相反)

STOP 19 暫停(

示例:

顯示信號KILL的信號編號

kill -l KILL

關閉apache用戶下所有進程

kill -u apache.apache

強制關閉進程ID為1937的進程,參數s可以省略。

kill -s 9 1937

kill -9 1937

top命令

top命令查看系統中各個進程的資源占用狀況,默認使用cpu占用來排序顯示,top命令顯示的結果是實時的。

格式:

top 參數

參數:

-b 批處理

-c 顯示完整的治命令

-i<時間> 設置間隔時間

-I 忽略失效過程

-p<進程號> 指定進程

-n<次數> 循環顯示的次數

-s 保密模式

-S 累積模式

-u<用戶名> 指定用戶名

示例:

查看所有程序資源占用狀況

top

查看apache用戶所有程序資源占用狀況

top -u apache.apache

find命令

在指定目錄中查找指定條件的文件或文件夾。

格式:

find 目錄路徑 選項 查找條件

選項:

-name 按照文件名查找文件。

-perm 按照文件權限來查找文件。

-prune 使用這一選項可以使find命令不在當前指定的目錄中查找,如果同時使用-depth選項,那么-prune將被find命令忽略。

-user 按照文件屬主來查找文件。

-group 按照文件所屬的組來查找文件。

-mtime -n +n 按照文件的更改時間來查找文件, - n表示文件更改時間距現在n天以內,+ n表示文件更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。

-nogroup 查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。

-nouser 查找無有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。

-newer file1 ! file2 查找更改時間比文件file1新但比文件file2舊的文件。

-type<類型參數> 查找某一類型的文件,諸如:

b - 塊設備文件。

d - 目錄。

c - 字符設備文件。

p - 管道文件。

l - 符號鏈接文件。

f - 普通文件。

-size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以字節計。-depth:在查找文件時,首先查找當前目錄中的文件,然后再在其子目錄中查找。

-fstype:查找位于某一類型文件系統中的文件,這些文件系統類型通常可以在配置文件/etc/fstab中找到,該配置文件中包含了本系統中有關文件系統的信息。

-mount:在查找文件時不跨越文件系統mount點。

-follow:如果find命令遇到符號鏈接文件,就跟蹤至鏈接所指向的文件。

-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設備中。

-amin n 查找系統中最后N分鐘訪問的文件

-atime n 查找系統中最后n*24小時訪問的文件

-cmin n 查找系統中最后N分鐘被改變文件狀態的文件

-ctime n 查找系統中最后n*24小時被改變文件狀態的文件

-mmin n 查找系統中最后N分鐘被改變文件數據的文件

-mtime n 查找系統中最后n*24小時被改變文件數據的文件

示例:

查找 “/”目錄(Linux系統根目錄)下名稱為httpd.conf的文件

find / -name httpd.conf

查找 “/data/www/project/”目錄下所有php文件

find /data/www/project -name *.php

查找 “.”目錄(當前目錄)下權限為777的文件

find . -perm 777

查找 “/”目錄下48小時內修改過的文件

find / -atime -2

查找 “/”目錄下所有文件夾

find / -type d

查找 “/”目錄下大于1kb的文件

find / -size +1000c

whereis命令

whereis命令只能用于程序名的搜索,而且只搜索二進制文件(參數-b)、說明文件(參數-m)和源代碼文件(參數-s),如果省略參數,則返回所有信息。

和find相比,whereis查找的速度非常快,這是因為linux系統會將 系統內的所有文件都記錄在一個數據庫文件中,當使用whereis和下面即將介紹的locate時,會從數據庫中查找數據,而不是像find命令那樣,通 過遍歷硬盤來查找,效率自然會很高。

但是該數據庫文件并不是實時更新,默認情況下時一星期更新一次,因此,我們在用whereis和locate 查找文件時,有時會找到已經被刪除的數據,或者剛剛建立文件,卻無法查找到,原因就是因為數據庫文件沒有被更新。

whereis常用于查找安裝程序的安裝目錄。

格式:

whereis 參數 程序名

參數:

-b 定位可執行文件。

-m 定位幫助文件。

-s 定位源代碼文件。

-u 搜索默認路徑下除可執行文件、源代碼文件、幫助文件以外的其它文件。

-B 指定搜索可執行文件的路徑。

-M 指定搜索幫助文件的路徑。

-S 指定搜索源代碼文件的路徑。

示例:

查找mysql安裝目錄

whereis mysql

ls命令

ls命令用來查看目標目錄中所有的子目錄和文件信息。

格式:

ls 參數 目錄名

參數:

-a, –all 列出目錄下的所有文件,包括以 . 開頭的隱含文件

-A 同-a,但不列出“.”(表示當前目錄)和“..”(表示當前目錄的父目錄)。

-c 配合 -lt:根據 ctime 排序及顯示 ctime (文件狀態最后更改的時間)配合 -l:顯示 ctime 但根據名稱排序否則:根據 ctime 排序

-C 每欄由上至下列出項目

–color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是'never'、'always'或'auto'其中之一

-d, –directory 將目錄象文件一樣顯示,而不是顯示其下的文件。

-D, –dired 產生適合 Emacs 的 dired 模式使用的結果

-f 對輸出的文件不進行排序,-aU 選項生效,-lst 選項失效

-g 類似 -l,但不列出所有者

-G, –no-group 不列出任何有關組的信息

-h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)

–si 類似 -h,但文件大小取 1000 的次方而不是 1024

-H, –dereference-command-line 使用命令列中的符號鏈接指示的真正目的地

–indicator-style=方式 指定在每個項目名稱后加上指示符號<方式>:none (默認),classify (-F),file-type (-p)

-i, –inode 印出每個文件的 inode 號

-I, –ignore=樣式 不印出任何符合 shell 萬用字符<樣式>的項目

-k 即 –block-size=1K,以 k 字節的形式表示文件的大小。

-l 除了文件名之外,還將文件的權限、所有者、文件大小等信息詳細列出來。

-L, –dereference 當顯示符號鏈接的文件信息時,顯示符號鏈接所指示的對象而并非符號鏈接本身的信息

-m 所有項目以逗號分隔,并填滿整行行寬

-o 類似 -l,顯示文件的除組信息外的詳細信息。

-r, –reverse 依相反次序排列

-R, –recursive 同時列出所有子目錄層

-s, –size 以塊大小為單位列出所有文件的大小

-S 根據文件大小排序

–sort=WORD 以下是可選用的 WORD 和它們代表的相應選項:

extension -X status -c

none -U time -t

size -S atime -u

time -t access -u

version -v use -u

-t 以文件修改時間排序

-u 配合 -lt:顯示訪問時間而且依訪問時間排序

配合 -l:顯示訪問時間但根據名稱排序

否則:根據訪問時間排序

-U 不進行排序;依文件系統原有的次序列出項目

-v 根據版本進行排序

-w, –width=COLS 自行指定屏幕寬度而不使用目前的數值

-x 逐行列出項目而不是逐欄列出

-X 根據擴展名排序

-1 每行只列出一個文件

–help 顯示此幫助信息并離開

–version 顯示版本信息并離開

示例:

顯示當前目錄下所有文件和子目錄(包括隱藏文件和隱藏目錄)的詳細信息

ls -a -l

顯示”/data/www/project”目錄下所有文件和子目錄(不包括隱藏文件和隱藏目錄)的詳細信息

ls -l /data/www/project

顯示”/data/www/project”目錄下所有文件和子目錄(包括隱藏文件和隱藏目錄)的名稱

ls -a /data/www/project

sudo命令

sudo命令是個管理員分配給一些linux用戶執行一些沒有權限的命令。

如果發現執行linux命令提示沒有權限什么balabala的,不管什么命令,前面先加上sudo試試。

格式:無需了解

參數:無需了解

示例:

sudo yum install xxxx

sudo svn up xxxx

sudo rm -r xxxx

tail命令

tail命令用于顯示指定文件的末尾內容,并且使用-f參數可以查看即時的文件內容,常用查看日志文件。

格式:

tail 參數 文件

參數:

-f 循環讀取

-q 不顯示處理信息

-v 顯示詳細的處理信息

-c<數目> 顯示的字節數

-n<行數> 顯示行數

--pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.

-q, --quiet, --silent 從不輸出給出文件名的首部

-s, --sleep-interval=S 與-f合用,表示在每次反復的間隔休眠S秒

示例:

及時顯示/data/www/project目錄下log.php文件的末尾內容

tail -f /data/www/project/log.php

及時顯示/data/www/project目錄下log.php文件的500行末尾內容

tail -f -n 500 /data/www/project/log.php

cp命令

cp命令用于復制文件或目錄。

格式:

cp 參數 原文件或原目錄 目標文件或目錄

參數:

-a或--archive 等于-dR或-dpR

--backup 為每個已存在的目標文件創建備份

-b 類似--backup但不接受參數

--copy-contents 在遞歸處理是復制特殊文件內容

-d或--no-dereference或--preserve=links 若源文件為連接文件屬性,則復制連接文件指向的文件而非復制文件本身

-s或--symbolic-link 對源文件建立符號鏈接,而非復制文件

-f或--force 強制操作,如果目標文件無法打開則將其移除并重試(當-n選項存在時則不需再選此項)

-i或--interactive 覆蓋前詢問(使前面的-n選項失效)

-H 跟隨源文件中的命令行符號鏈接

-l或--link 鏈接文件而不復制

-L或--dereference 總是跟隨符號鏈接

-n或--no-clobber 不要覆蓋已存在的文件(使前面的-i選項失效)

-P或----parents 保留源文件或目錄的路徑,此路徑可以是絕對路徑或相對路徑,且目的目錄必須已經存在

-p等于--preserve 保留源文件或目錄的屬性,包括所有者、所屬組、權限與時間

--preserve[=屬性列表 保持指定的屬性(默認:模式,所有權,時間戳),如果可能保持附加屬性:環境、鏈接等

-R或-r或--recursive 遞歸處理,復制目錄及目錄內的所有項目

-u或--update 使用這項參數之后,只會在源文件的修改時間(Modification Time)較目的文件更新時,或是名稱相互對應的目的文件并不存在,才復制文件

-v或--verbose 顯示執行過程

-x或--one-file-system 復制的文件或目錄存放的文件系統,必須與cp指令執行時所處的文件系統相同,否則不復制,亦不處理位于其他分區的文件

示例:

強行復制文件index.html到目錄/data/www/project

cp -f -v /home/usr/download/index.html /data/www/project

同:cp -fv /home/usr/download/index.html /data/www/project

rm命令

rm命令和cp命令類似。

示例:

刪除download目錄

rm -rf /home/usr/download

刪除download目錄下的所有文件和子目錄,但保留download目錄

rm -rf /home/usr/download/*

mv命令

mv命令和cp命令類似。

示例:

移動download目錄中的所有子目錄和文件到/data/www/project 目錄,但保留download目錄

mv -rf /home/usr/download/* /data/www/project

rpm命令

rpm是RedHat Package Manager(RedHat軟件包管理工具)的簡稱。

.rpm執行安裝包分為二進制包(Binary)以及源代碼包(Source)兩種,二進制包可以直接安裝在計算機中,而源代碼包將會由RPM自動編譯、安裝。源代碼包經常以src.rpm作為后綴名。

常用參數:

-ivh:安裝顯示安裝進度–install–verbose–hash

-Uvh:升級軟件包–Update;

-qpl:列出RPM軟件包內的文件信息[Query Package list];

-qpi:列出RPM軟件包的描述信息[Query Package install package(s)];

-qf:查找指定文件屬于哪個RPM軟件包[Query File];

-Va:校驗所有的RPM軟件包,查找丟失的文件[View Lost];

-e:刪除包

-q samba :查詢程序是否安裝

常用命令:

install/upgrade/remove:安裝/更新/卸載

yum命令

Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及CentOS中的Shell前端軟件包管理器。基于RPM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。

常用參數:

-e 靜默執行

-t 忽略錯誤

-R[分鐘] 設置等待時間

-y 自動應答yes

–skip-broken 忽略依賴問題

–nogpgcheck 忽略GPG驗證

全部命令:

check-update 檢查可更新的包

clearn 清除全部

clean packages 清除臨時包文件(/var/cache/yum 下文件)

clearn headers 清除rpm頭文件

clean oldheaders 清除舊的rpm頭文件

deplist 列出包的依賴

list 可安裝和可更新的RPM包

list installed 已安裝的包

list extras 已安裝且不在資源庫的包

info 可安裝和可更新的RPM包 信息

info installed 已安裝包的信息(-qa 參數相似)

install[RPM包] 安裝包

localinstall 安裝本地的 RPM包

update[RPM包] 更新包

upgrade 升級系統

search[關鍵詞] 搜索包

provides[關鍵詞] 搜索特定包文件名

reinstall[RPM包] 重新安裝包

repolist 顯示資源庫的配置

resolvedep 指定依賴

remove[RPM包] 卸載包

如果要安裝指定版本或指定插件,則需要詳細文件名稱:

[zhichao@localhost ~]$ sudo yum list java*

java-1.8.0-openjdk.x86_64 1:1.8.0.45-36.b13.fc22 @System

java-1.8.0-openjdk-devel.x86_64 1:1.8.0.45-36.b13.fc22 @System

java-1.8.0-openjdk-headless.x86_64 1:1.8.0.45-36.b13.fc22 @System

sudo yum install java-1.8.0-openjdk-devel.x86_64

apt-get命令

apt-get(全稱Advanced Package Tool)的作用同于yum,不過使用該命令的操作系統為Ubuntu和Debian。

經過修改后可以使用apt-rpm處理紅帽的Package Manager(RPM)文件。

常用命令:

apt-get install packagename

安裝一個新軟件包

apt-get remove packagename

卸載一個已安裝的軟件包(保留配置文檔)

apt-get remove –purge packagename

卸載一個已安裝的軟件包(刪除配置文檔)

apt-get autoremove packagename

刪除包及其依賴的軟件包

apt-get autoremove –purge packagname

刪除包及其依賴的軟件包+配置文件,比上面的要刪除的徹底一點

dpkg –force-all –purge packagename

有些軟件很難卸載,而且還阻止了別的軟件的應用,就能夠用這個,但是有點冒險。

dnf命令

dnf是fedora22新的用于替換yum和rpm的命令。

在使用yum時,會提示過時,但仍然可用。

詳細了解請看一下這篇文章:http://www.linuxidc.com/Linux/2015-06/118751.htm

systemctl命令

在cenos7和fedora22中,systemctl替換了service命令。

寫法從以前的:service start mysqld

變成了:systemctl start mysqld.service

詳細了解請看一下這篇文章:http://www.linuxidc.com/Linux/2015-07/120833.htm

或者:

https://wiki.archlinux.org/index.php/Systemd_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

pwd命令

pwd命令可以獲取當前目錄的全路徑。

示例:

$ pwd

/home/zhichao/下載

終端下的快捷鍵

Ctrl+a:光標回到命令行首。 (a:ahead)

Ctrl+e:光標回到命令行尾。 (e:end)

Ctrl+b:光標向行首移動一個字符。 (b:backwards)

Ctrl+f:光標向行尾移動一個字符。 (f:forwards)

Ctrl+w: 刪除光標處到行首的字符。

Ctrl+k:刪除光標處到行尾的字符。

Ctrl+u:刪除整個命令行文本字符。

Ctrl+h:向行首刪除一個字符。

Ctrl+d:向行尾刪除一個字符。

Ctrl+y::粘貼Ctrl+u,Ctrl+k,Ctrl+w刪除的文本。

Ctrl+p: 上一個使用的歷史命令。 (或者直接按向上方向鍵;p:previous)

Ctrl+n: 下一個使用的歷史命令。(或者直接按向下方向鍵;n:next)

Ctrl+r:快速檢索歷史命令。(r:retrieve)。

Ctrl+t: 交換光標所在字符和其前的字符。

Ctrl+i:相當于Tab鍵。

Ctrl+o:相當于Ctrl+m.

Ctrl+m:相當Enter鍵。

其他控制鍵:

Ctrl+s:使終端發呆,靜止,可以使快速輸出的終端屏幕停下來。

Ctrl+q:退出Ctrl+s引起的發呆。

Ctrl+z:使正在運行在終端的任務,運行于后臺。 (可用fg恢復)

Ctrl+c:中斷終端中正在執行的任務。

Ctrl+d: 在空命令行的情況下可以退出終端。

Ctrl+[ :相當于Esc鍵。

Esc鍵:連續按3次顯示所有的支持的終端命令。

Tab鍵:命令、文件名等自動補全命令或目錄、文件名。

alt+/:同Tab鍵

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,345評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,494評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,283評論 0 374
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,953評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,714評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,186評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,255評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,410評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,940評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,776評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,976評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,518評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,210評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,642評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,878評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,654評論 3 391
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,958評論 2 373

推薦閱讀更多精彩內容