linux腳本統(tǒng)計命令 linux腳本命令大全

linux基本命令

Linux 對我們的生活產(chǎn)生了巨大的沖擊。至少你的安卓手機使用的就是 Linux 核心。盡管如此,在第一次開始使用 Linux 時你還是會感到難以下手。因為在 Linux 中,通常需要使用終端命令來取代 Windows 系統(tǒng)中的點擊啟動圖標操作。但是不必擔心,這里我們會介紹 10 個 Linux 基本命令來幫助你開啟 Linux 神秘之旅。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、沙縣網(wǎng)站維護、網(wǎng)站推廣。

幫助新手走出第一步的 10 個 Linux 基本命令

當我們談?wù)?Linux 命令時,實質(zhì)上是在談?wù)?Linux 系統(tǒng)本身。這短短的 10 個 Linux 基本命令不會讓你變成天才或者 Linux 專家,但是能幫助你輕松開始 Linux 之旅。使用這些基本命令會幫助新手們完成 Linux 的日常任務(wù),由于它們的使用頻率如此至高,所以我更樂意稱他們?yōu)?Linux 命令之王!

讓我們開始學(xué)習(xí)這 10 條 Linux 基本命令吧。

1. sudo

這條命令的意思是“以超級用戶的身份執(zhí)行”,是 SuperUserDo 的簡寫,它是新手將要用到的最重要的一條 Linux 命令。當一條單行命令需要 root 權(quán)限的時候,sudo命令就派上用場了。你可以在每一條需要 root 權(quán)限的命令前都加上sudo。

$ sudo su

2. ls

跟其他人一樣,你肯定也經(jīng)常想看看目錄下都有些什么東西。使用列表命令,終端會把當前工作目錄下所有的文件以及文件夾展示給你。比如說,我當前處在 /home 文件夾中,我想看看 /home 文件夾中都有哪些文件和目錄。

/home$ ls

在 /home 中執(zhí)行l(wèi)s命令將會返回類似下面的內(nèi)容:

imad lost+found

3. cd

變更目錄命令(cd)是終端中總會被用到的主要命令。它是最常用到的 Linux 基本命令之一。此命令使用非常簡單,當你打算從當前目錄跳轉(zhuǎn)至某個文件夾時,只需要將文件夾鍵入此命令之后即可。如果你想跳轉(zhuǎn)至上層目錄,只需要在此命令之后鍵入兩個點 (..) 就可以了。 舉個例子,我現(xiàn)在處在 /home 目錄中,我想移動到 /home 目錄中的 usr 文件夾下,可以通過以下命令來完成操作。

/home $ cd usr

/home/usr $

4. mkdir

只是可以切換目錄還是不夠完美。有時候你會想要新建一個文件夾或子文件夾。此時可以使用 mkdir 命令來完成操作。使用方法很簡單,只需要把新的文件夾名跟在 mkdir 命令之后就好了。

~$ mkdir folderName

5. cp

拷貝-粘貼copy-and-paste是我們組織文件需要用到的重要命令。使用 cp命令可以幫助你在終端當中完成拷貝-粘貼操作。首先確定你想要拷貝的文件,然后鍵入打算粘貼此文件的目標位置。

$ cp src des

注意:如果目標目錄對新建文件需要 root 權(quán)限時,你可以使用 sudo命令來完成文件拷貝操作。

6. rm

rm 命令可以幫助你移除文件甚至目錄。如果不希望每刪除一個文件都提示確認一次,可以用-f參數(shù)來強制執(zhí)行。也可以使用-r參數(shù)來遞歸的移除文件夾。

$ rm myfile.txt

7. apt-get

這個命令會依據(jù)發(fā)行版的不同而有所區(qū)別。在基于 Debian 的發(fā)行版中,我們擁有 Advanced Packaging Tool(APT)包管理工具來安裝、移除和升級包。apt-get 命令會幫助你安裝需要在 Linux 系統(tǒng)中運行的軟件。它是一個功能強大的命令行,可以用來幫助你對軟件執(zhí)行安裝、升級和移除操作。

在其他發(fā)行版中,例如 Fedora、Centos,都各自不同的包管理工具。Fedora 之前使用的是 yum,不過現(xiàn)在 dnf 成了它默認的包管理工具。

$ sudo apt-get update

$ sudo dnf update

8. grep

當你需要查找一個文件,但是又忘記了它具體的位置和路徑時,grep命令會幫助你解決這個難題。你可以提供文件的關(guān)鍵字,使用grep命令來查找到它。

$ grep user /etc/passwd

9. cat

作為一個用戶,你應(yīng)該會經(jīng)常需要瀏覽腳本內(nèi)的文本或者代碼。cat命令是 Linux 系統(tǒng)的基本命令之一,它的用途就是將文件的內(nèi)容展示給你。

$ cat CMakeLists.txt

10. poweroff

最后一個命令是 poweroff。有時你需要直接在終端中執(zhí)行關(guān)機操作。此命令可以完成這個任務(wù)。由于關(guān)機操作需要 root 權(quán)限,所以別忘了在此命令之前添加sudo。

$ sudo poweroff

總結(jié)

如我在文章開始所言,這 10 條命令并不會讓你立即成為一個 Linux 大拿,但它們會讓你在初期快速上手 Linux。以這些命令為基礎(chǔ),給自己設(shè)置一個目標,每天學(xué)習(xí)一到三條命令,這就是此文的目的所在。

linux腳本中的ps等命令問題

ps?-eaf?|grep?tomcat?|grep?-v?grep?/dev/null?21

分為4段

1、ps -eaf 查看當前進程,-e 顯示所有進程,a顯示終端上的所有進程,包括其他用戶的進程,f 全格式。

2、顯示的結(jié)果通過管道“|”傳給第二段 grep tomcat,查找tomcat進程。

3、同樣查找的結(jié)果傳給第三段 grep -v grep,-v?不顯示匹配的行,因為用grep查詢tomcat的時候也算一個進程,而ps的時候該進程信息中也包含了tomcat,例如:

root??????2317??0.0??0.0???5980???744?pts/4????S+???15:00???0:00?grep?tomcat

所以用grep -v grep把這條過濾掉。

4、第四段 /dev/null 21,將顯示結(jié)果(默認是正確輸出,即1)重定向到/dev/null中去,2代表錯誤輸出,也和1一樣。Linux中0代表輸入stdin,1代表輸出stdout,2代表錯誤輸出stderror。

每運行一個命令,該命令都會有一個返回值給shell,你可以在終端中試試ls,然后echo $?查看返回值,肯定是0,如果ls 一個不存在的文件,再看,肯定不是0。以此判斷上一條命令是否執(zhí)行成功。

if?[?$??-eq?0?];?then

判斷上一條命令的返回值是否等于(-eq) 0,即是否運行成功。

求助Linux,編寫Shell腳本程序統(tǒng)計指定目錄中普通文件的個數(shù)及其總的大小

大小的:du -sh 文件名

目錄的:ls -lR| grep "^d" | wc -l

連接的:-l

linux下如何統(tǒng)計部分文件大小,有很多文件夾,還包含子文件件夾,統(tǒng)計出所有包含‘123’的文件的總大小

查看某個文件夾或文件的大小是: du -sm filename,

查找某些目錄下某些文件文件夾的大小: find . -name "條件" | xargs du -sm

你如果想查所有包含123的文件的大小的話,使用linux命令可能就很難做到了,使用shell腳本可以實現(xiàn)到,你可以在shell腳本中先查出來所有名字是123的文件,搜索結(jié)果中會是全路徑形式的,你取文件所在的目錄,然后使用上面的方式統(tǒng)計出來包含123文件的所有文件夾的總大小.

例如:

先搜出來所有123的文件:find . -name "123"

/temp/123

/temp/f1/123

/temp/f2/123

獲取文件所在的文件夾

/temp

/temp/f1

/temp/f2

然后 ***| xargs du -sm

把上面的值加起來

linux下shell腳本命令

Shell腳本基本知識

概述:shell其實是內(nèi)核與用戶之間的一個接口,

shell腳本

如果有一系列經(jīng)常使用的linux命令,你可以把它們存儲在一個文件腫。shenll可以讀取這個文件,并執(zhí)行其中的命令。這樣的文件成為腳本文件。

執(zhí)行shell腳本

要創(chuàng)建一個shell腳本,你要使用任何編輯器比如vi在文本文件中編寫他。

為了使用bash shell賴執(zhí)行腳本magic,其命令是:bash magic或者./magic

echo命令:

echo “this is an example of the echo command!”

屏幕上就會回顯“this is an example of the echo command!”

#符號

用于在shell腳本腫可以包含注解入口

echo “hello”

#this is a comment line. this would not produce any output!

echo “world!”

第二行是一個注解的例子。它將被shell忽略,而且不產(chǎn)生任何消息

變量:

可以在任何時間通過簡單的賦值來創(chuàng)建。

語法:

variable name-value

Linux 中的所有變量都被當作字符串

引用變量:

$符號用于引用一個變量的內(nèi)容

variable1 = ${variable2}

讀入值給變量

在執(zhí)行shell腳本時,shell還允許用戶直接從鍵盤讀入一個值給變量,還可以使用read命令來作。

$read fname

本地和全局shell變量

局部變量

當引用shell時,只有創(chuàng)建它的shell能夠知道變量的存在

全局變量

稱為子shell

shell中創(chuàng)建的變量局部于創(chuàng)建它的shell,除非使用export命令特別指出是全局的。

環(huán)境變量:

通過改變這些變量的值,用戶能夠定制此環(huán)境

一些環(huán)境變量的例子是HOME,PATH,PS1,PS2,LOGNAME,SHLVL,及SHELL

HOME變量

Linux系統(tǒng)中的每個用戶都有一個相關(guān)的稱作HOME的目錄

當一個用戶登錄后,進入相應(yīng)的HOME的目錄

$ echo $HOME

PATH變量

包含一列用冒號定界的目錄的路徑名字,便于可執(zhí)行程序的搜索。

PS1變量

PS1(Prompt String 1)變量包含了shell提示符,$符號

$ PS1 = “HELLO”

HELLO

PS2變量

是為第二個提示符設(shè)置值的環(huán)境變量

LOGNAME變量

包含用戶的注冊名字

$echo “${LOGNAME}”

SHLVL 變量

該變量包含當前工作的shell level

SHELL變量

環(huán)境變量存儲了用戶缺省的shell

env命令

可用來查看所有的已移出的環(huán)境變量表和它們各自的值!

命令替換

在單個命令行中使用多個命令的另外一種方法(非Pipes)是通過命令替換

echo “the data is `date`”

expr命令

用于求之算術(shù)表達式。該命令的輸出被送到標準輸出

$ expr 4 + 5

將在屏幕上顯示9

算術(shù)展開:

你可以在$((…)) 中括一個表達式,用下面的命令來計算它的值;

$((expression))

example1

編寫一個shell腳本用于計算呼叫中心未應(yīng)答的詢問的數(shù)量。該腳本應(yīng)該接受一天那所報告的詢問的總數(shù)和應(yīng)答的詢問的數(shù)量,以便計算未應(yīng)答的詢問的數(shù)量。

所有未應(yīng)答的詢問總數(shù)=所有詢問的總數(shù)-應(yīng)答的詢問的數(shù)量

!--[if !supportLists]--※ !--[endif]--※※※※※※※※※※※※※※※※※※※※※※※

條件執(zhí)行

test和[]

求值表達式,并返回true(0)或false()

數(shù)值測試:

-eq 等于則為真

-ne 不等于則為真

-gt 大于則為真

-ge 大于等于則為真

-lt 小于則為真

-le 小于等于則為真

if構(gòu)造

Linux shell提供了循環(huán)和判定的構(gòu)造,可以在shell腳本中使用

算術(shù)測試

結(jié)合if構(gòu)造,它可以用于測試變量的數(shù)字值

串測試

test命令也可以用于字符串

= 等于則為真

!= 不相等則為真

-z 字符串 長度為零則為真

-n 字符串 長度不為零則為真

文件測試

test命令也可以用于檢查文件的狀態(tài)

-e 文件存在則為真

-r 文件存在并且可讀則為真

-w 文件存在并且可寫則為真

-x 文件存在并且可執(zhí)行則為真

-s 文件存在并且至少有一個字符則為真

-d 文件存在并且為目錄則為真

-f 文件存在并且為普通文件則為真

-c 文件存在并且為字符型文件則為真

-b 文件存在并且為塊特殊文件則為真

-a并且 -o或者 !非

exit命令

用于終止shell腳本的執(zhí)行并返回到$提示符下

case 。。。esac

shell腳本中使用的這個構(gòu)造依據(jù)變量的值而執(zhí)行一組特定指令

當變量的值和其中的一個值匹配的時候,就執(zhí)行寫在該值下的一組命令。

example3

迭代

while構(gòu)造

while 條件

do

命令(s)

done

只有條件為真的時候,才能執(zhí)行do與done之間的命令

until構(gòu)造

until循環(huán)構(gòu)造的求值模式于while循環(huán)相反

until循環(huán)將繼續(xù)執(zhí)行直到求值的條件為真的時候

for構(gòu)造

for variable_name in list_of_values

do

done

for循環(huán)取一列值作為輸入并對循環(huán)中每個值執(zhí)行循環(huán)

break和contineu命令

同其他語言中的用法

example4

控制進程的執(zhí)行

請求后臺處理

用于請求后臺進程的符號是 ()

$ wc tempfile

[1] 2082

$ vi newfile

檢查后臺進程

ps(進程狀態(tài))命令為每個當前的活動的每個進程產(chǎn)生一行入口。

終止后臺進程

可用kill,如下所示

kill 278

查看完成一個命令所花的時間

你可以使用time命令來查看一個命令從開始到結(jié)束所花的時間

time fine /etc –name “passwd” 2 /dev/null /dev/null表明忽略錯誤信息。

管道的介紹

垂直條(|)是管道字符

它只是shell:“|”前面命令的輸出作為“|”之后命令的輸入發(fā)送

ls –l | more

用管道組合命令,功能強大

網(wǎng)站名稱:linux腳本統(tǒng)計命令 linux腳本命令大全
鏈接地址:http://www.muchs.cn/article0/hggcio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、用戶體驗網(wǎng)站內(nèi)鏈、網(wǎng)站導(dǎo)航、網(wǎng)站收錄商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計