歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux常用指令匯總

Linux常用指令匯總

日期:2017/3/3 12:11:52   编辑:Linux技術

/ :代表根目錄

. :代表當前目錄,也可用./來表示

.. :代表上一層目錄,也可用../來表示

~ :目前使用用戶所在的根目錄

一、基本指令操作

cd :變換目錄pwd (顯示當前的目錄)

pwd -P

-P :顯示出確實的路徑,而非使用連結(link)的路徑

env :查看系統環境變量date(日期命令)

格式化輸出日期 :date +%Y/%m/%d-%H:%M:%S

cal(日歷命令)顯示日歷 :cal

顯示指定年份日歷 :cal 2016

顯示指定年份的指定月份日歷 :cal 6 2016

bc簡單的計算器 :bc

manman指令用於查看指令的用法

如:查看ls指令的用法 :man ls

chgrpchgrp :改變檔案所屬群組,系統組信息在/etc/group

EG :chgrp oinstall LINJM.LOG

chownchown :改變檔案所屬人,系統用戶信息在/etc/passwd

EG:chown jimly LINJM.LOG

也可以同時改變檔案的所屬人和所屬群組:

chown jimly:oinstall LINJM.LOG

chmodchmod :改變檔案的屬性、SUID等等特性

EG:chmod 755 LINJM.LOG或chmod u=rwx,go=rx LINJM.LOG

chmod a=rx LINJM.LOG

所有的都減去x權限 :chmod a-x LINJM.LOG

所有的都加上x權限 :chmod a+x LINJM.LOG

r(讀) :4 w(寫) :2 x(執行) :1

u :user g :group o :other a :all

+ :加入 - :除去 = :設定

chgrp chown chmod -R

用-R來遞歸

ctrl + s :暫停屏幕的輸出

ctrl + q :恢復屏幕的輸出

ctrl + u :將光標前的字符刪除

將ls -l /home/test/輸出的結果存儲在menu.txt文件中:

ls -l /home/test/ > /home/test/menu.txt

使用>>會在menu.txt上累加內容,使用>則是先清空文件內容後再追加內容

ls -l /home/test/ >> /home/test/menu.txt

將輸出的錯誤結果存儲在error.txt文件中:

find /home -name test 2> /home/fnc/error.txt

將輸出的正確結果存儲在right.txt文件中:

find /home -name test 1> /home/fnc/right.txt

將正確和錯誤的信息全寫進output.txt文件中:

find /home -name test > /home/fnc/output.txt 2>&1

|(管道指令)查看etc目錄下的文件信息,通過less來前後翻動信息:

ls -al /etc | less

附:less中用d來向下翻頁,用u來向上翻頁

用shift+g來調至頁末,用p來調至頁首

用?來向上查詢,用/來向下查詢

查找時用n來繼續下一個搜尋,用N來反向(向上)搜尋

用q來結束這次的less

grep(檢索命令)grep -acinv 關鍵字

-c 計算搜索到字符串的次數

-i 忽略大小寫

-n 順便輸出行號

-v 反向選擇,顯示出沒有'搜索字符串'內容的那一行

EG :cat linjm.txt |grep -ne "hello world" -e "hello lin"

當有多個檢索關鍵字時,需用到-e

wcwc -lwm

-l 僅列出行

-w 僅列出多少字

-m 多少字符

cut cut -dfc

-d 後面接分隔符,與-f一起使用

-f 依據-d的分隔符將一段信息分割成數段,用-f取出第幾段的信息

-c 以字符的單位取出固定字符區間

查看磁盤容量信息 :df -h

lnln -sf 來源文件 目標文件

-s :加了-s就是軟連接(Symbolic link),沒加則為硬連接(hard link)

-f :如果目標文件存在,則將目標文件移除後再建立

mkdir(建立一個新的目錄)mkdir -mp 目錄名稱

-m : 設定檔案的權限

-p :將所需要的目錄遞歸建立起來

EG :mkdir -m 777 world

mkdir -p lin/jm

rmdir(刪除一個空的目錄)rmdir 目錄名稱 用於刪除空目錄

非空目錄刪除用rm -rf lin

rm(刪除)rm -fir 檔案或目錄

-f :force,強制移除

-i :在刪除前會詢問使用者是否動作

-r :遞歸刪除

mv[b](移動)[/b]mv -fiu source destination

-f :強制移動而不詢問

-i :若目標檔案(destination)已經存在時,就會詢問是否覆蓋

-u :若目標檔案已經存在,且source比較新,才會更新

rename[b](重命名)[/b]rename oldname newname filename

EG :rename menu log menu.txt

cp[b](復制)[/b] cp -adfilprsu 來源檔(source) 目的檔(destination)

cp source1 source2 ...... directory

-a :相當於-pdr的意思

-d :若來源文件為連接文件的屬性(link file),則復制連接文件屬性而非檔案本身

-f :強制復制,若有重復或其他疑問時,不會詢問使用者,而強制復制

-l :若destionation已經存在時,在覆蓋時會先詢問是否真的動作

-p :進行硬式連接(hard link),而非復制檔案本身

-r :連同檔案的屬性一起復制過去

-s :復制成為符號連接文件(symbolic link),亦即快捷方式檔案

-u :若destionation比source舊,才更新destionation

EG :cp LINJM.LOG log.txt lin/

注意 :若來源檔有兩個以上,則最後一個目的文件一定要是目錄才行

ls[b](檢視)[/b]ls -aAdfFhilRS 目錄名稱

ls --color={none, auto, always} 目錄名稱

ls --full-time 目錄名稱

-a :全部的檔案,連同隱藏檔(開頭為.的檔案)一起列出來

-A :全部的檔案,連同隱藏檔,但不包括.和..這兩個目錄,一起列出來

-d :僅列出目錄本身,而不是列出目錄內的檔案數據

-f :直接列出結果,而不進行排序(ls預設會以檔名排序)

-F :根據檔案、目錄等信息,給予附加數據結構,例如:

* :代表可執行檔; / :代表目錄; = :代表 socket 檔案; | :代表 FIFO 檔案;

-h :將檔案容量以人類較易讀的方式(例如 GB,KB 等等)列出來;

-i :列出 inode 位置,而非列出檔案屬性

-l :長數據串行出,包含檔案的屬性等等數據

-n :列出 UID 與 GID 而非使用者與群組的名稱 (UID 與 GID 會在賬號管理提到!)

-r :將排序結果反向輸出,例如:原本檔名由小到大,反向則為由大到小

-R :連同子目錄內容一起列出來

-S :以檔案容量大小排序

-t :依時間排序

--color=never :不要依據檔案特性給予顏色顯示;

--color=always :顯示顏色

--color=auto :讓系統自行依據設定來判斷是否給予顏色

--full-time :以完整時間模式 (包含年、月、日、時、分) 輸出

--time={atime,ctime} :輸出 access 時間或 改變權限屬性時間 (ctime)

而非內容變更時間 (modification time)

whichwhich -a 命令名稱 用來查看可執行文件的位置

-a :將所有可以找到的指令均列出,而不止第一個被找到的指令名稱

EG :which ls

檔案內容查閱:cat 由第一行開始顯示檔案內容

tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!

nl 顯示的時候,順道輸出行號!

more 一頁一頁的顯示檔案內容

less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!

head 只看頭幾行

tail 只看尾巴幾行

od 以二進制的方式讀取檔案內容!

catcat -AEnTv 檔案名

-A :相當於 -vET 的整合參數,可列出一些特殊字符~

-E :將結尾的斷行字符 $ 顯示出來;

-n :打印出行號;

-T :將 [tab] 按鍵以 ^I 顯示出來;

-v :列出一些看不出來的特殊字符

nlnl -bnw 檔案名

-b :指定行號指定的方式,主要有兩種:

-b a :表示不論是否為空行,也同樣列出行號;

-b t :如果有空行,空的那一行不要列出行號;

-n :列出行號表示的方法,主要有三種:

-n ln :行號在屏幕的最左方顯示;

-n rn :行號在自己字段的最右方顯示,且不加 0 ;

-n rz :行號在自己字段的最右方顯示,且加 0 ;

-w :行號字段的占用的位數。

head(取出前面幾行)head -n number 檔案名

-n :後面接數字,代表顯示幾行的意思

EG :head -n 10 menu.txt

tail(取出後面幾行)tail -n number 檔案名

-n :後面接數字,代表顯示幾行的意思

EG :tail -n 10 menu.txt

find(搜索命令)find path options file

EG :find /home/ -name log.txt

find /home/test/ -size 4k 注:等於4k

find /home/test/ -size -4k 注:小於4k

find /home/test/ -size +4k 注:大於4k

當前目錄:find . -name 20160526*

指定目錄 find /home -name 20160526*

忽略大小寫:find . -iname orainventory

查找當前目錄下以dmp結尾或log結尾:find . -name *.dmp -o -name *.log

查找當前目錄下不是以html結尾的:find . ! -name *.html

查找大於10M的文件:find . -type f -size +10M

查找等於於10M的文件:find . -type f -size 10M

查找小於10M的文件:find . -type f -size -10M

(b塊:512字節 c字節 w字:2字節 k千字節 M兆字節 G吉字節)

-type f f普通文件 d目錄

向下最大深度限制為3:find . -maxdepth 6 -type f -size +10M

從向下深度9開始查找:find . -mindepth 9 -type f -size +10M

二、VI文字處理器

vi(編輯文檔)vi 檔案名

EG :vi log.txt

i :進入編輯模式

ESC :在編輯模式按ESC進入一般模式

一般模式下:

H :光標移動到這個屏幕的最上方那一行

M :光標移動到這個屏幕的中央那一行

L :光標移動到這個屏幕的最下方那一行

0 :這是數字0:移動到這一行的最前面字符處

n space :n是數字,space是空格,將光標後移n個字符距離

$ :將光標移至當前行的末尾

G :將光標移至檔案的最後一行

nG :n是數字,將光標移至檔案的第n行

gg:將光標移動到檔案的第一行,相當於1G

n Enter :n為數字,將光標向下移動n行

/word :向光標之下搜索word關鍵字信息

?word :向光標之上搜索word關鍵字信息

n :向下繼續檢索 N :向上繼續檢索

u :撤銷

:w filenam :將編輯的數據存儲為另一個檔案,檔案名filename

:r filename :寫入另一個檔案的數據,即將filename這個檔案的內容追加到光標所在的行後面

:n1,n2 w filename :將第n1行到n2行的數據寫入另一個文檔,文檔名為filename

:set nu :在文檔中顯示行號

:set nonu :取消文檔中顯示的行號

:q :退出文檔編輯

:q! :退出文檔編輯,且不保存修改信息

:wq :退出文檔編輯且保存修改信息

:wq! :強制退出,強制保存修改信息

:e! :將文檔還原到最原始的狀態

ctrl + d :向下移動半頁

ctrl + u :向上移動半頁

ctrl + f :向下移動一頁

ctrl + b :向上移動一頁

三、打包與解包

.tar解包 :tar xvf FileName.tar

打包 :tar cvf FileName.tar DirName

(注 :tar是打包,不是壓縮!)

.gz解壓1 :gunzip FileName.gz

解壓2 :gzip -d FileName.gz

壓縮 :gzip FileName

.tar.gz 和 .tgz解壓 :tar zxvf FileName.tar.gz

壓縮 :tar zcvf FileName.tar.gz DirName

.bz2解壓1 :bzip2 -d FileName.bz2

解壓2 :bunzip2 FileName.bz2

壓縮 :bzip2 -z FileName

.tar.bz2解壓 :tar jxvf FileName.tar.bz2

壓縮 :tar jcvf FileName.tar.bz2 DirName

.Z解壓 :tar Zxvf FileName.tar.Z

壓縮 :tar Zcvf FileName.tar.Z DirName

關閉防火牆 :service iptables stop

重啟網卡 :service network restart

修改主機名 :cat /etc/sysconfig/network

查看linux版本信息 :more /proc/version

[b]如果你覺得博文寫的不錯,就點下【推薦一下】或【打賞】鹵煮一杯奶茶吧!!![/b]

Copyright © Linux教程網 All Rights Reserved