成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳細介紹Linux shell腳本基礎學習(五)

系統 Linux
Linux shell腳本基礎前面我們在介紹Linux shell腳本的控制流程時,還有一部分內容沒講就是有關here document的內容這里繼續。

Linux shell腳本基礎已經被分成好幾個部分了,這里對控制流程的內容也就馬上講完了,這是最后一部分關于here document,這里舉例稍微有點復雜,我們慢慢來分析這個復雜Linux shell腳本。

6. Here documents

當要將幾行文字傳遞給一個命令時,here documents(譯者注:目前還沒有見到過對該詞適合的翻譯)一種不錯的方法。對每個腳本寫一段幫助性的文字是很有用的,此時如果我們四有那個 here documents就不必用echo函數一行行輸出。 一個 "Here document" 以 << 開頭,后面接上一個字符串,這個字符串還必須出現在here document的末尾。下面是一個例子,在該例子中,我們對多個文件進行重命名,并且使用here documents打印幫助:

#!/bin/sh

# we have less than 3 arguments. Print the help text:

if [ $# -lt 3 ] ; then

cat <

ren -- renames a number of files using sed regular expressions

USAGE: ren 'regexp' 'replacement' files...

EXAMPLE: rename all *.HTM files in *.html:

ren 'HTM$' 'html' *.HTM

HELP

exit 0

fi

OLD="$1"

NEW="$2"

# The shift command removes one argument from the list of

# command line arguments.

shift

shift

# $* contains now all the files:

for file in $*; do

if [ -f "$file" ] ; then

newfile=`echo "$file" | sed "s/${OLD}/${NEW}/g"`

if [ -f "$newfile" ]; then

echo "ERROR: $newfile exists already"

else

echo "renaming $file to $newfile ..."

mv "$file" "$newfile"

fi

fi

done

這是一個復雜一些的例子。讓我們詳細討論一下。第一個if表達式判斷輸入命令行參數是否小于3個 (特殊變量$# 表示包含參數的個數) 。如果輸入參數小于3個,則將幫助文字傳遞給cat命令,然后由cat命令將其打印在屏幕上。打印幫助文字后程序退出。如果輸入參數等于或大于3個,我們 就將第一個參數賦值給變量OLD,第二個參數賦值給變量NEW。下一步,我們使用shift命令將第一個和第二個參數從參數列表中刪除,這樣原來的第三個 參數就成為參數列表$*的第一個參數。然后我們開始循環,命令行參數列表被一個接一個地被賦值給變量$file。接著我們判斷該文件是否存在,如果存在則 通過sed命令搜索和替換來產生新的文件名。然后將反短斜線內命令結果賦值給newfile。這樣我們就達到了我們的目的:得到了舊文件名和新文件名。然 后使用mv命令進行重命名。這樣就明了這個復雜的Linux shell腳本了吧。

【編輯推薦】

  1. 詳細介紹Linux shell腳本基礎學習(一)
  2. Linux系統安全提高之安全配置
  3. Linux系統安全提高之系統優化
  4. 閑談十個linux管理常見錯誤
  5. 全面剖析Linux系統管理命令w
責任編輯:小霞 來源: 互聯網
相關推薦

2010-03-05 11:58:52

2010-03-05 13:00:46

2010-03-05 13:09:23

Linux shell

2010-03-05 11:18:52

Linux shell

2010-03-05 13:19:23

2010-03-05 10:24:33

2010-03-05 10:50:17

2011-09-27 13:52:41

2010-06-23 16:05:36

Linux Bash

2010-06-23 15:55:36

Linux Bash

2011-06-21 14:42:37

ECMAScriptJavaScript

2016-12-07 18:22:23

shelllinuxgrep

2019-08-12 07:45:44

Linux腳本shell

2011-06-22 12:57:54

JVM

2010-02-23 10:32:20

Python 腳本

2024-11-27 09:19:25

2010-01-05 16:56:28

2010-06-23 15:36:23

Linux Bug B

2009-12-11 15:59:00

Linux grep指

2009-12-25 14:24:59

Linux指令od
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品1 | 日本手机看片 | 毛片网在线观看 | 精品福利视频一区二区三区 | 欧美综合国产精品久久丁香 | 午夜免费视频 | 久久在线免费 | 男女下面一进一出网站 | 国产视频福利一区 | 成人国产午夜在线观看 | 亚洲视频免费观看 | 欧美精品99 | 久久噜| 91视频电影| 日韩av免费在线观看 | 亚洲精品久久久久久一区二区 | 成人av资源在线 | 日本免费视频 | 日韩欧美国产精品一区 | 一级全黄视频 | 中文字幕日韩欧美一区二区三区 | 欧美无乱码久久久免费午夜一区 | 日韩视频在线观看一区二区 | 国产午夜精品视频 | 国产一区二区三区视频 | www.亚洲国产精品 | 久久精品中文字幕 | 亚洲国产精品一区二区久久 | 久久久www成人免费精品 | 日本久久一区 | 黄色av网站在线免费观看 | 国产成人精品一区二区三区四区 | 我要看免费一级毛片 | 亚洲免费在线 | jizz中国日本 | 伊人网99| 日韩在线欧美 | 精品一二区 | 午夜视频在线免费观看 | 午夜影院在线播放 | 二区在线观看 |