校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Linux shell腳本的建立與執行

Linux shell腳本的建立與執行

熱門標簽:外呼系統的合法性 武漢語音電銷機器人加盟 同花順電話機器人微信 輝縣市地圖標注 房產證地圖標注的兩個面積 北京電銷機器人對市場的影響 威海電銷外呼系統好用嗎 湖北孝感如何辦理 地圖標注x是啥意思

在進行linux測試時編寫腳本是必不可少的。最近經常使用Linux,感覺太頻繁地敲擊鍵盤有些累了,于是想到了Shell腳本??梢园烟嗟拿顚懗梢粋€腳本,這樣每次執行一遍  shell文件,就可以省去了敲擊鍵盤的時間。于是在網上搜了一些有關Linux下腳本編程的內容。

Shell不僅僅是命令的收集,而且是一門非常棒的編程語言。您可以通過使用shell使大量的任務自動化,shell特別擅長系統管理任務,尤其適合那些易用性、可維護性和便攜性比效率更重要的任務。

用戶可以使用任何文本編輯器編輯shell腳本文件,例如VI、gedit等。

Shell腳本的名稱可以隨便定義,也不要什么后綴名,例如可以寫abc,smartzip這類名稱。

下面我們開始編寫一個Shell腳本:

1. 程序必須以下面的行開始(必須放在文件的第一行):

#!/bin/sh

符號#!用來告訴系統它后面的參數是用來執行該文件的程序。在這個例子中我們使用/bin/sh來執行程序。

2. 注釋

在進行shell編程時,以#開頭的句子表示注釋,直到這一行的結束。如同其他編程語言一樣,我們在編寫腳本時也應該盡可能地添加注釋,那么即使相當長的時間內沒有使用該腳本,我們也能在很短的時間內明白該腳本的作用及工作原理。

3. 變量

在其他編程語言中您必須使用變量。在shell編程中,所有的變量都由字符串組成,并且您不需要對變量進行聲明。要賦值給一個變量,您可以這樣寫:變量名=值

取出變量值可以加一個美元符號($)在變量前面:

#!/bin/sh
#對變量賦值:
a="hello world"
# 現在打印變量a的內容:
echo "A is:"
echo $a

4. Shell命令和流程控制

在shell腳本中可以使用三類命令:

1)Unix 命令:

雖然在shell腳本中可以使用任意的unix命令,但是還是由一些相對更常用的命令。這些命令通常是用來進行文件和文字操作的。

常用命令語法及功能

  • echo "some text": 將文字內容打印在屏幕上
  • ls: 文件列表
  • wc –l filewc -w filewc -c file:
  • 計算文件行數計算文件中的單詞數計算文件中的字符數
  • cp sourcefile destfile: 文件拷貝
  • mv oldname newname : 重命名文件或移動文件
  • rm file: 刪除文件
  • grep ''pattern'' file: 在文件內搜索字符串比如:grep
  • ''searchstring'' file.txt
  • cut -b colnum file:指定欲顯示的文件內容范圍,并將它們輸出到標準輸出設備比如:輸出每行第5個到第9個字符cut -b5-9 file.txt千萬不要和cat命令混淆,這是兩個完全不同的命令
  • cat file.txt: 輸出文件內容到標準輸出設備(屏幕)上
  • file somefile: 得到文件類型
  • read var: 提示用戶輸入,并將輸入賦值給變量
  • sort file.txt: 對file.txt文件中的行進行排序
  • uniq: 刪除文本文件中出現的行列比如: sort file.txt | uniq
  • expr: 進行數學運算Example: add 2 and 3expr 2 "+" 3
  • find: 搜索文件比如:根據文件名搜索find . -name filename -print
  • tee: 將數據輸出到標準輸出設備(屏幕) 和文件比如:somecommand | tee  outfile
  • basename file: 返回不包含路徑的文件名比如: basename /bin/tux將返回 tux
  • dirname file: 返回文件所在路徑比如:dirname /bin/tux將返回/bin
  • head file: 打印文本文件開頭幾行
  • tail file : 打印文本文件末尾幾行

sed: Sed是一個基本的查找替換程序??梢詮臉藴瘦斎耄ū热缑罟艿溃┳x入文本,并將結果輸出到標準輸出(屏幕)。該命令采用正則表達式(見參考)進行搜索。不要和shell中的通配符相混淆。比如:將linuxfocus 替換為 LinuxFocus :cat text.file | sed ''s/linuxfocus/LinuxFocus/'' > newtext.fileawk: awk

用來從文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。cat   file.txt | awk -F, ''{print $1 "," $3  }''這里我們使用,作為字段分割符,同時打印第一個和第三個字段。如果該文件內容如下: AdamBor, 34, IndiaKerry Miller, 22, USA命令輸出結果為:AdamBor, IndiaKerry Miller, USA

2) 概念: 管道, 重定向和 backtick

這些不是系統命令,但是他們真的很重要。管道 (|) 將一個命令的輸出作為另外一個命令的輸入。

grep "hello" file.txt | wc -l

在file.txt中搜索包含有”hello”的行并計算其行數。

在這里grep命令的輸出作為wc命令的輸入。當然您可以使用多個命令。

重定向:將命令的結果輸出到文件,而不是標準輸出(屏幕)。

>  寫入文件并覆蓋舊文件

>> 加到文件的尾部,保留舊文件內容。

反短斜線

使用反短斜線可以將一個命令的輸出作為另外一個命令的一個命令行參數。

命令: find . -mtime -1 -type f -print 用來查找過去24小時(-mtime –2則表示過去48小時)內修改過的文件。如果您想將所有查找到的文件打一個包,則可以使用以下腳本:

#!/bin/sh
# The ticks are backticks (`) not normal quotes (''):
tar -zcvf lastmod.tar.gz `find . -mtime -1 -type f 
-print`

3) 流程控制

"if" 表達式 如果條件為真則執行then后面的部分:

 if ....; then
....
elif ....; then
....
 else
 ....
 fi

大多數情況下,可以使用測試命令來對條件進行測試。比如可以比較字符串、判斷文件是否存在及是否可讀等等…通常用" [ ] "來表示條件測試。注意這里的空格很重要。要確保方括號的空格。

  •  [ -f "somefile" ] :判斷是否是一個文件
  •  [ -x "/bin/ls" ] :判斷/bin/ls是否存在并有可執行權限
  •  [ -n "$var" ] :判斷$var變量是否有值
  •  [ "$a" = "$b" ] :判斷$a和$b是否相等

5. 執行腳本 Linux下的sh文件默認是有執行權限的。我們可以用命令:ls -l file_name來查看用戶對文件的權限。如果沒有執行權限,可以執行以下命令添加:chmod +x file_name 。然后可以通過運行:sh XX.sh這樣的命令來運行腳本。當然不同的系統可能不完全相同,需要根據實際情況來。例如有的Linux下是./XX.sh就可以運行。

概括地來說,shell對shell腳本的調用可以采用3種方式:

(1)一種是將文件名作為shell命令的參數,其調用格式為:

$ Bash script_file

當要被執行的腳本文件沒有可執行權限時,只能使用這種調用方式。

(2)另一種調用的方法是先將腳本文件的訪問權限更改為可執行,以便該文件可以作為執行文件調用。

具體的方法是:$chmod +x  script_file

$PATH=$PATH:$PWD
$script_file

(3)當執行一個腳本文件時,Shell就產生了一個Shell(即一個子進程)去執行文件中的命令。因此,腳本文件的變量值不能傳遞到當期Shell(即父進程)。為了使腳本文件中的變量值傳遞到當前Shell,必須在命令文件名前面加“.”。即:

$./script_file

“.”命令的功能是在當前shell中執行腳本文件中的命令,而不是產生一個子shell執行命令文件中的命令。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

您可能感興趣的文章:
  • Ubuntu、Linux Mint一鍵安裝Chrome瀏覽器的Shell腳本分享
  • Linux下實現SNMP一鍵安裝的Shell腳本
  • 阿里云ECS(linux)一鍵安裝web環境sh安裝步驟
  • Linux一鍵安裝web環境全攻略(阿里云服務器)
  • Linux中shell腳本獲取當前工作目錄的方法
  • 詳解在linxu下Svn一鍵安裝shell腳本

標簽:蚌埠 迪慶 西寧 麗江 日喀則 安康 紹興 武威

巨人網絡通訊聲明:本文標題《Linux shell腳本的建立與執行》,本文關鍵詞  Linux,shell,腳本,的,建立,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux shell腳本的建立與執行》相關的同類信息!
  • 本頁收集關于Linux shell腳本的建立與執行的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    色综合中文字幕国产| 欧美日韩免费观看一区三区| 亚洲伦理在线精品| 91麻豆精品91久久久久久清纯 | 亚洲小说欧美激情另类| 欧美草草影院在线视频| 色悠悠久久综合| 麻豆精品视频在线| 亚洲在线视频网站| 欧美国产视频在线| 3atv在线一区二区三区| 97超碰欧美中文字幕| 激情图片小说一区| 午夜视频一区在线观看| 亚洲黄色小说网站| 国产精品嫩草99a| 久久亚洲精精品中文字幕早川悠里| 日本精品一区二区三区四区的功能| 久久精品国产亚洲高清剧情介绍| 亚洲免费在线视频| 中文字幕日韩一区| 久久精品视频免费| 久久―日本道色综合久久| 在线播放91灌醉迷j高跟美女 | 欧美美女激情18p| 色婷婷综合久久久久中文一区二区 | 国产亚洲欧美日韩俺去了| 日韩免费视频一区| 欧美视频自拍偷拍| 精品久久久久久久人人人人传媒 | 日韩欧美一级片| 久久久国产一区二区三区四区小说| 国产欧美日韩在线看| 亚洲色图欧美偷拍| 老司机精品视频线观看86| 丁香一区二区三区| 欧美一区二区三区在线| 日本一区二区三区久久久久久久久不| 亚洲欧美色综合| 精品一区二区在线免费观看| 91偷拍与自偷拍精品| 欧美日本一区二区在线观看| 2017欧美狠狠色| 亚洲高清不卡在线观看| 国产成人精品免费| 欧美日韩国产首页| 亚洲欧美日韩在线播放| 激情图区综合网| 欧美乱妇20p| 亚洲精品伦理在线| 国产精品综合久久| 91精品国产91热久久久做人人| 欧美高清在线视频| 久草热8精品视频在线观看| 91行情网站电视在线观看高清版| 久久久精品免费观看| 日韩在线一区二区三区| 99re66热这里只有精品3直播| 日韩精品专区在线影院重磅| 亚洲成人激情社区| 91免费视频大全| 国产精品视频观看| 激情图区综合网| 欧美成人乱码一区二区三区| 亚洲国产一区二区视频| 91美女蜜桃在线| 中文字幕第一区二区| 经典三级一区二区| 欧美一级黄色录像| 蜜桃一区二区三区在线| 欧美视频在线观看一区| 玉米视频成人免费看| 99久久精品国产一区二区三区 | 一区二区三区日韩精品| 成人av免费在线播放| 久久久无码精品亚洲日韩按摩| 免费在线看一区| 欧美肥妇毛茸茸| 日产国产高清一区二区三区| 欧美日韩精品一区二区| 五月天国产精品| 欧美日韩国产一级二级| 亚洲国产成人91porn| 在线观看亚洲a| 亚洲自拍偷拍av| 欧美午夜视频网站| 午夜久久久久久久久久一区二区| 欧美三级电影一区| 亚洲h精品动漫在线观看| 欧美日韩一区二区电影| 丝袜美腿一区二区三区| 日韩三级在线观看| 国产美女精品人人做人人爽| 国产午夜亚洲精品午夜鲁丝片| 成人免费看片app下载| 国产日韩欧美在线一区| 国产福利一区二区三区| 国产精品网站一区| 欧美在线不卡视频| 卡一卡二国产精品| 国产精品久久影院| 欧美美女bb生活片| 国产一二三精品| 日韩一区有码在线| 3atv一区二区三区| 国产不卡在线一区| 五月婷婷激情综合网| 精品99一区二区| 色综合久久久久网| 精品综合久久久久久8888| 国产精品电影院| 日韩一区二区三区精品视频 | 亚洲国产精品精华液2区45| 欧美性生活大片视频| 国模少妇一区二区三区| 亚洲乱码日产精品bd| 欧美一区二区三区四区在线观看| 国产成人免费视频网站高清观看视频| 久久久精品影视| 欧美裸体bbwbbwbbw| 成人国产免费视频| 免费成人小视频| 亚洲黄色录像片| 精品国产亚洲一区二区三区在线观看| 99精品国产91久久久久久| 精品一区二区三区在线视频| 亚洲人成网站影音先锋播放| 欧美成人猛片aaaaaaa| 在线中文字幕一区| 国产剧情一区二区| 日韩av电影免费观看高清完整版 | 成人av先锋影音| 精品影视av免费| 午夜久久久久久久久久一区二区| 国产精品福利一区二区| 久久一二三国产| 欧美日韩精品免费观看视频 | 麻豆成人免费电影| 亚洲成在人线免费| 亚洲三级免费电影| 国产精品伦理在线| 亚洲国产精品av| 精品久久久影院| 精品成a人在线观看| 欧美一区二区三区色| 欧美午夜精品久久久| 97se亚洲国产综合自在线 | 在线免费观看日韩欧美| 成人h动漫精品一区二区| 国产在线一区二区| 九九热在线视频观看这里只有精品| 午夜欧美在线一二页| 亚洲午夜三级在线| 亚洲夂夂婷婷色拍ww47 | 狠狠色伊人亚洲综合成人| 日本三级亚洲精品| 蜜桃视频在线观看一区| 日韩激情av在线| 日本伊人精品一区二区三区观看方式| 亚洲午夜久久久久久久久电影院| 一区二区三区在线免费| 一区二区三区高清在线| 一区二区三区欧美在线观看| 亚洲夂夂婷婷色拍ww47| 亚洲国产裸拍裸体视频在线观看乱了 | 一本一道久久a久久精品| 色综合色狠狠天天综合色| 日本乱码高清不卡字幕| 欧美日韩精品专区| 久久欧美一区二区| 国产精品人成在线观看免费| 亚洲欧美区自拍先锋| 夜夜爽夜夜爽精品视频| 午夜视频在线观看一区二区 | 国产日产欧美精品一区二区三区| 国产亚洲午夜高清国产拍精品| 国产精品午夜电影| 亚洲国产精品久久一线不卡| 精品一区二区三区视频在线观看 | 日韩国产一二三区| 国产精品1区2区3区在线观看| 国产综合色精品一区二区三区| 精品一区二区在线播放| 一区二区三区**美女毛片| 日韩激情在线观看| 久久er精品视频| 99久久国产综合精品女不卡| 91丨porny丨最新| 欧美在线|欧美| 欧美日韩国产高清一区二区| 成人毛片视频在线观看| 粉嫩久久99精品久久久久久夜| 91小视频在线| 欧美午夜精品一区二区蜜桃| 91精品国产麻豆| 欧美美女一区二区| 日韩码欧中文字| 水野朝阳av一区二区三区| 婷婷丁香久久五月婷婷| 国产黄色精品网站|