日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 常用命令汇总及解释。

發(fā)布時間:2024/9/21 linux 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 常用命令汇总及解释。 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、linux上的文件管理類命令都有哪些,其常用的使用方法及其相關(guān)示例演示。

? ?linux上的文件管理類命令有:cat、tac、more、less、head、tail、cp、mv、rm、rmdir、mkdir等

? ?cat:文件文本查看工具

????cat [option]…[file]…

????-n:給顯示的文本行編號?

????

????-E:顯示行結(jié)束符$.

????

? ?tac:文件文本查看工具(cat 的倒序)

????tac [option]…[file]…

? ? ?

? ?more:可翻頁查看文件內(nèi)容,一頁一頁的翻動

????

????注:如果more后面接的文件內(nèi)容行數(shù)大于屏幕輸出的行數(shù)時,就會出現(xiàn)類似上圖,最后一行會顯示百分比,表示已經(jīng)顯示了整個文件的百分多少,且最后一行還可以輸入命令。

????空格鍵:代表向下翻一頁

????Enter:代表向下滾動一行,當?shù)轿募淖詈笠豁摃r,自動退出more,回到命令行。

????/字符串:代表在這個顯示的內(nèi)容當中,向下查詢"字符串"這個關(guān)鍵字

????:f ? ?:立刻顯示出文件名以及目前顯示的行數(shù)

????q ? ?:代表立刻離開more

????b ? ?:往回翻頁

? ?less:可翻頁查看文件內(nèi)容,一頁一頁的翻動,比more有彈性

????可輸入的命令:

????空格鍵:向下翻動一頁;

????[PageDown]:向下翻動一頁;

????[PageUp]:向上翻動一頁;

????/字符串 :向下查詢"字符串"的功能;

?????字符串 :向上查詢"字符串"的功能;

????n?? ?:重復(fù)前一個查詢;

????N? ? :反向重復(fù)前一個查詢;

????q? ? :離開less。

? ?head:取出文件中的前面N行

? ? ?head [OPTION]… [FILE]…

????-n # 或者 -#: 顯示幾行,默認顯示10行

????

? ?tail:取出文件中的最后N行

????tail [OPTION]…[FILE]…

????-n #或者- #:顯示幾行,默認顯示10行

????-f:持續(xù)檢測后面所接的文件名,要等到按下[ctrl]-c才會結(jié)束檢測。

????

????

? ?? 此時需要按下[ctrl]-c才會結(jié)束,后者會一直檢測該文件。

? ?cp:復(fù)制

????cp [OPTION]… [-T] SOURCE DEST

????cp [OPTION]… SOURCE… DIRECTORY

? ??

????-i:交互式復(fù)制,即覆蓋之前提醒用戶確認;

????

????此時按下Y,表示覆蓋,按下N,表示不覆蓋。

????-f:強制覆蓋目標文件;此時不會提示你是否覆蓋了,直接強制覆蓋;

????如:當前目錄下已經(jīng)有一個passwd文件了,執(zhí)行如下操作不會有任何提示

????

????-r, -R:遞歸復(fù)制目錄;

????如:將/usr/share/man/下的man#文件復(fù)制到當前目錄

????

????-d:復(fù)制符號鏈接文件本身,而非其指向的源文件;

????以此文件為例,其位于/etc/下,(centos7.1)

????

????

????-a:-dR –preserve=all, archive,用于實現(xiàn)歸檔;

–preserv=

? ? ? mode:權(quán)限

? ? ? ownership:屬主和屬組

? ? ? timestamps: 時間戳

? ? ? context:安全標簽

? ? ? xattr:擴展屬性

? ? ? links:符號鏈接

? ? ? all:上述所有屬性

? ?mv:和剪切一個意思?

????mv [OPTION]… [-T] SOURCE DEST

????mv [OPTION]… SOURCE… DIRECTORY

????mv [OPTION]… -t DIRECTORY SOURCE..

????-i:交互式

????-f:強制

? ?rm:刪除文件

????rm [OPTION]… FILE…

????-i:交互

????-f:強制

????-r:遞歸

????

????刪除目錄:rm -rf /PATH/TO/DIR

????建議一定要執(zhí)行一次:rm -rf /* ? (有驚喜)

????

2、bash的工作特性之命令執(zhí)行狀態(tài)返回值和命令行展開所涉及的內(nèi)容及其示例演示?

? ??bash的工作特性之命令執(zhí)行狀態(tài)返回值:

????命令執(zhí)行完后,其狀態(tài)返回值保存于bash的特殊變量$?中。

????bash通過狀態(tài)返回值來輸出此結(jié)果:

????成功:0

????失敗:1-255

????

????注意,命令執(zhí)行狀態(tài)返回值和命令的執(zhí)行結(jié)果間的區(qū)別。如上圖,ls的執(zhí)行結(jié)果是顯示當前目錄的文件名,緊接著執(zhí)行echo命令用于顯示命令的執(zhí)行狀態(tài)返回值,不管ls命令是否成功執(zhí)行,其都會有相關(guān)數(shù)據(jù)顯示,但是命令執(zhí)行狀態(tài)返回值卻是不同的。

????bash的工作特性之命令行展開:

????~:自動展開為用戶的家目錄,或指定的用戶的家目錄。

????{}:可承載一個以逗號分割的路徑列表,并能夠?qū)⑵湔归_為多個路徑。

????

????


關(guān)于linux shell 的展開與匹配


花括號展開

在非引號內(nèi)的內(nèi)容,如果用花括號包括,而且里面用逗號分隔(至少包含一個逗號,可以是空內(nèi)容),這樣花括號里的內(nèi)容會被展開成用空格分開的一個列表,花括號前后可以緊隨前綴和后綴(前后綴都是可選的)。

例如:

echo {a,b,c}

echo hello,{world,pig}

echo rep{,,,,,}eat

注意花括號展開,前綴不能是$,因為${...}在shell中是變量

波浪號展開

從波浪號~到第一個未被引號包含的斜杠/(如果沒有斜杠,則全部算上),作為波浪號前綴。

在波浪號后面的字符串作為一個可能的登錄名:如果為空,被展開成該用戶的HOME變量,如果HOME變量未設(shè)置,則用用戶執(zhí)行shell的主目錄替換。如果不為空,則按照該登錄名的主目錄替換(原文:If this login name is the null string, the tilde is replaced with the value of the?HOME?shell variable. If?HOME?is unset, the home directory of the user executing the shell is substituted instead. Otherwise, the tilde-prefix is replaced with the home directory associated with the specified login name.

例如:

echo ~ ? # 顯示$HOME內(nèi)容

HOME=/bin && echo ~ ? # 顯示/bin

unset HOME && echo ~ ? # 顯示當前用戶主目錄

echo ~root ?# 顯示root用戶主目錄

波浪號還可以與加減號和數(shù)字,產(chǎn)生一個遍歷文件夾堆棧的效果(關(guān)于文件夾堆棧,參考dirs、pushd、popd幾個命令)。

echo ~+ ?# 顯示$PWD

echo ~- ?# 顯示$OLDPWD

echo ~+2 ?# 顯示dirs中第3個內(nèi)容,索引基于0

echo ~-3 ? # 顯示dirs中倒數(shù)第4個內(nèi)容,索引基于0

如果無法展開,那就會原樣顯示,例如dir堆棧中只有1個內(nèi)容,那么~+1是無法展開的(這時只有~+0有效)。

Shell參數(shù)和變量展開

用$符號開始,后面接著變量名或者花括號括起來的變量名,如果是花括號內(nèi)以嘆號開頭,那么就是變量名本身。

例如:

echo $PWD ? ?# 顯示PWD對應(yīng)的值

echo ${PWD} # 顯示PWD對應(yīng)的值

echo ${!PWD} ? # 顯示“PWD”這個變量名,而不是它的值

echo ${!P*} ? ? ?# 顯示所有以P開頭的環(huán)境變量名

如果一個變量名不存在,就創(chuàng)建它。

echo ${HELLO:=hello} ?# 如果HELLO不存在,就用hello給它賦值,否則直接輸出$HELLO的值

命令替換

將一些命令執(zhí)行后,結(jié)果替換到該命令語句中,可以用$()和``括住的方法

命令替換是可以嵌套的。

例如:

echo `date`

echo $(date)

echo $(echo `date` |awk '{print $4}')

算術(shù)展開

放在$(( ))中的表達式會被計算,其中變量會被求值,例如:

a=1 && b=3 && echo $(($a+$b))

如果是數(shù)字,0開頭的8進制,0x開頭的16進制,其它進制用Base#number的方式

可支持2~64進制,如果進制小于等于36,可以用a-z或A-Z表示10-35,如果進制大于36,則a-z表示10-35,A-Z表示36-61,@表示62,_表示63

例如:

echo $((16#32)) ?# 16進制的32,輸出50

echo $((64#@_)) ?# 輸出4031 = 62 * 64 + 63

用$[]也可以算術(shù)展開,但是不要和測試條件[]混淆了

例如:

echo $[1+4]

進程替換

>(LIST)或<(LIST)

LIST是一個命令,它執(zhí)行時會從一個FIFO或/dev/fd/xxx這樣的地方讀取(對應(yīng)>(LIST))或輸出(對應(yīng)<(LIST)),而這個FIFO或/dev/fd/xxx作為外面命令的一個參數(shù)。

例如:

echo -e 'haha hehe\nhaha2 hehe2' >a.txt ? ?# 生成了一個a.txt文件,里面有兩行

awk '{ print $2 }' <(cat a.txt) ? # 先為<(cat a.txt)生成了一個/dev/fd/63,關(guān)聯(lián)到cat a.txt,也就是說cat a.txt的輸出都被定向到/dev/fd/63這個文件了,然后外圍的命令執(zhí)行的是awk '{ print $2 }' /dev/fd/63,這樣打印的就是hehe和hehe2。

字詞分隔

$IFS里面的任何一個字符都可以作為分隔符,平時我們默認的就是回車、空格、tab符號。

文件名展開

進行字詞分隔后,如果不指定-f選項,shell會搜索"*","?","[",如果遇到了,就會認為是一個帶pattern的word,然后用字典序?qū)⒎系乃形募鎿Q過去,如果沒有文件名匹配:1?shell的nullglob選項關(guān)閉,則不進行文件名展開,保留word原樣;2 shell的nullglob打開,則移除這個word。如果shell的nocaseglob選項打開,則忽略大小寫。


當匹配文件名時(這里指不包括文件夾),除非shell的dotglob被設(shè)置,否則.或./開頭的文件都必須顯示指定,例如:

ls * ? # 列出當前文件夾中所有不以"."開頭的文件

ls .* ?#?列出當前文件夾中所有以"."開頭的文件

當匹配文件名時,"/"必需顯示匹配,例如:

ls ./* 和 ls ./*/*是不同的。

其它情況下,"."和普通字符一樣,例如:

*.txt和*txt都可以匹配a.txt


還有一個系統(tǒng)變量GLOBIGNORE,如果一個文件名匹配了一個pattern word,但是它也匹配了GLOBIGNORE,則它會被忽略,不過兩個特殊文件一定會被忽略,就是"."和".."。

如果GLOBIGNORE打開,那么dotglob選項也會自動打開,這樣會導(dǎo)致當你ls *時,其他以"."開頭的文件也會被match,如果想忽略"."開頭的文件,可以在GLOBIGNORE里面添加一個".*"的匹配。如果GLOBIGNORE未設(shè)定,則dotglob關(guān)閉。



3、請使用命令行展開功能來完成以下練習(xí)?

? (1)、創(chuàng)建/tmp目錄下的:a_c, a_d, b_c, b_d

????~]#mkdir -p {a,b}_{c,d}

????

? (2)、創(chuàng)建/tmp/mylinux目錄下的:

? mylinux/

? ? ├── bin

? ? ├── boot

? ? │ ? └── grub

? ? ├── dev

? ? ├── etc

? ? │ ? ├── rc.d

? ? │ ? │ ? └── init.d

? ? │ ? └── sysconfig

? ? │ ? ? ? └── network-scripts

? ? ├── lib

? ? │ ? └── modules

? ? ├── lib64

? ? ├── proc

? ? ├── sbin

? ? ├── sys

? ? ├── tmp

? ? ├── usr

? ? │ ? └── local

? ? │ ? ? ? ├── bin

? ? │ ? ? ? └── sbin

? ? └── var

? ? ? ? ├── lock

? ? ? ? ├── log

? ? ? ? └── run

????~]#mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib

/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

????

4、文件的元數(shù)據(jù)信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息?

???

元數(shù)據(jù)被定義為:描述數(shù)據(jù)的數(shù)據(jù),對數(shù)據(jù)及信息資源的描述性信息。

元數(shù)據(jù)(Metadata)是描述其它數(shù)據(jù)的數(shù)據(jù)(data about other data),或者說是用于提供某種資源的有關(guān)信息的結(jié)構(gòu)數(shù)據(jù)(structured data)。元數(shù)據(jù)是描述信息資源或數(shù)據(jù)等對象的數(shù)據(jù),其使用目的在于:識別資源;評價資源;追蹤資源在使用過程中的變化;實現(xiàn)簡單高效地管理大量網(wǎng)絡(luò)化數(shù)據(jù);實現(xiàn)信息資源的有效發(fā)現(xiàn)、查找、一體化組織和對使用資源的有效管理。 元數(shù)據(jù)的基本特點主要有:

a)元數(shù)據(jù)一經(jīng)建立,便可共享。元數(shù)據(jù)的結(jié)構(gòu)和完整性依賴于信息資源的價值和使用環(huán)境;元數(shù)據(jù)的開發(fā)與利用環(huán)境往往是一個變化的分布式環(huán)境;任何一種格式都不可能完全滿足不同團體的不同需要;

b)元數(shù)據(jù)首先是一種編碼體系。元數(shù)據(jù)是用來描述數(shù)字化信息資源,特別是網(wǎng)絡(luò)信息資源的編碼體系,這導(dǎo)致了元數(shù)據(jù)和傳統(tǒng)數(shù)據(jù)編碼體系的根本區(qū)別;元數(shù)據(jù)的最為重要的特征和功能是為數(shù)字化信息資源建立一種機器可理解框架。

元數(shù)據(jù)體系構(gòu)建了電子政務(wù)的邏輯框架和基本模型,從而決定了電子政務(wù)的功能特征、運行模式和系統(tǒng)運行的總體性能。電子政務(wù)的運作都基于元數(shù)據(jù)來實現(xiàn)。其主要作用有:描述功能、整合功能、控制功能和代理功能。

由于元數(shù)據(jù)也是數(shù)據(jù),因此可以用類似數(shù)據(jù)的方法在數(shù)據(jù)庫中進行存儲和獲取。如果提供數(shù)據(jù)元的組織同時提供描述數(shù)據(jù)元的元數(shù)據(jù),將會使數(shù)據(jù)元的使用變得準確而高效。用戶在使用數(shù)據(jù)時可以首先查看其元數(shù)據(jù)以便能夠獲取自己所需的信息。

數(shù)據(jù)倉庫

數(shù)據(jù)倉庫領(lǐng)域中,元數(shù)據(jù)按用途分成技術(shù)元數(shù)據(jù)和業(yè)務(wù)元數(shù)據(jù)。首先,元數(shù)據(jù)能提供基于用戶的信息,如記錄數(shù)據(jù)項的業(yè)務(wù)描述信息的元數(shù)據(jù)能幫助用戶使用數(shù)據(jù)。其次,元數(shù)據(jù)能支持系統(tǒng)對數(shù)據(jù)的管理和維護,如關(guān)于數(shù)據(jù)項存儲方法的元數(shù)據(jù)能支持系統(tǒng)以最有效的方式訪問數(shù)據(jù)。具體來說,在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)機制主要支持以下五類系統(tǒng)管理功能:

(1)描述哪些數(shù)據(jù)在數(shù)據(jù)倉庫中;

(2)定義要進入數(shù)據(jù)倉庫中的數(shù)據(jù)和從數(shù)據(jù)倉庫中產(chǎn)生的數(shù)據(jù);

(3)記錄根據(jù)業(yè)務(wù)事件發(fā)生而隨之進行的數(shù)據(jù)抽取工作時間安排;

(4)記錄并檢測系統(tǒng)數(shù)據(jù)一致性的要求和執(zhí)行情況;

(5)衡量數(shù)據(jù)質(zhì)量。


?文件的數(shù)據(jù)分兩種:一種元數(shù)據(jù),既屬性數(shù)據(jù);一種就是數(shù)據(jù)本身;

????可以用命令stat查看文件的元數(shù)據(jù);

????

????file:文件名;

????size:文件大小

????block:文件占了多少個數(shù)據(jù)塊

????IO Block:文件所占數(shù)據(jù)塊的塊大小

????Device:硬件,既說明該文件在硬盤的那個柱面

????Inode:節(jié)點號

????links:鏈接

????Access(第一個):權(quán)限

????Uid:該文件所屬的屬主

????Gid:該文件所屬的屬組

????context:安全上下文

????Access(第二個):文件上一次的訪問時間

????Modify:文件上一次修改的時間

????Change:文件上一次屬性更改的時間


????可以使用touch命令更改文件的時間戳:

????touch [OPTION]… FILE..。

????-c: 指定的文件路徑不存在時不予創(chuàng)建;

????-a: 僅修改access time;

????-m:僅修改modify time;

????-t STAMP

[[CC]YY]MMDDhhmm[.ss]

????~]#touch FILE

????這條命令會將文件的三個時間一并更改成當前的時間

? ? 如下三個分別更改atime,mtime,三個時間一起更改。

????

????

????

5、如何定義一個命令的別名,如何在命令中引用另一個命令的執(zhí)行結(jié)果?

????命令別名使用alias命令。

????~]#alias NAME='COMMAND'

????

????在一個命令中引用另一個命令的執(zhí)行結(jié)果也是bash的特性之一,引用。

????方法:$(COMMAND) 或者 `COMMAND`

????

6、顯示/var目錄下所有以1開頭,以一個小寫字母結(jié)尾,且中間至少出現(xiàn)一位數(shù)字(可以有其它字符)的文件或目錄?

? ?ls -l ?/var/1*[0-9]*[a-z]

7、顯示/etc目錄下,以任意一個數(shù)字開頭,且以非數(shù)字結(jié)尾的文件或目錄?

????~]#ls -d /etc/[0-9]*[^0-9]

8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄?

????~]#ls -d /etc/[^a-z][a-z]*

9、在/tmp目錄下創(chuàng)建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22?

????~]#touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

????

10、復(fù)制/etc目錄下所有以p開頭,以非數(shù)字結(jié)尾的文件或目錄到/tmp/mytest1目錄中?

????~]#mkdir /tmp/mytest1

????~]#cp -r /etc/p*[^0-9] /tmp/mytest1

????

11、復(fù)制/etc目錄下所有以.d結(jié)尾的文件或目錄至/tmp/mytest2目錄中?

????~]#mkdir /tmp/test2

????~]#cp -r /etc/*.d /tmp/mytest2

????

12、復(fù)制/etc/目錄下所有以l或m或n開頭,以.conf結(jié)尾的文件至/tmp/mytest3目錄中?

????~]#mkdir /tmp/mytest3

????~]#cp /etc/[lmn]*.conf /tmp/mytest3

????



轉(zhuǎn)載于:https://blog.51cto.com/10997683/1855559

總結(jié)

以上是生活随笔為你收集整理的Linux 常用命令汇总及解释。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。