當前位置: 首頁IT技術操作系統(tǒng) → 充分利read命令在linux中發(fā)揮強大的作用

充分利read命令在linux中發(fā)揮強大的作用

更多

經常寫bash腳本的朋友,read命令是不可缺少的。實踐一下就可以了解read命令的大致用途:

  編寫一個腳本:

  #!/bin/bash

  # hao32 test read

  echo -e "Please enter your test :"

  read TESTREAD

  echo $TESTREAD

  試著運行下這個腳本,你就可以大致了解read命令的用法,下面是轉載一篇read命令詳細的用法,大家參考參考啊,呵呵

  作用

  從標準輸入中讀取一行。

  語法

  read [ -p ][ -r ][ -s ][ -u[ n ] ] [ VariableName?Prompt ]

  [ VariableName ... ]

  描述

  read 命令從標準輸入中讀取一行,并把輸入行的每個字段的值指定給 shell 變量,用 IFS(內部字段分隔符)變量中的字符作為分隔符。VariableName 參數(shù)指定 shell 變量的名稱,shell 變量獲取輸入行一個字段的值。由VariableName 參數(shù)指定的第一個 shell 變量指定給每一個字段的值,由VariableName 參數(shù)指定的第二個 shell 變量指定給第二個字段的值,以此類推,直到最后一個字段。如果標準輸入行的字段比相應的由 VariableName 參數(shù)指定的 shell 變量的個數(shù)多,把全部余下的字段的值賦給指定的最后的 shell 變量。如果比 shell 變量的個數(shù)少,則剩余的 shell 變量被設置為空字符串。

  注意: 如果省略了 VariableName 參數(shù),變量 REPLY 用作缺省變量名。

  由 read 命令設置的 shell 變量影響當前 shell 執(zhí)行環(huán)境。

  標志

  -p 用 |& (管道,& 的記號名稱)讀取由 Korn shell 運行的進程的輸出作為輸入。

  注:-p 標志的文件結束符引起該進程的清除,因此產生另外一個進程。

  -r 指定讀取命令把一個 \ (反斜杠) 處理為輸入行的一部分,而不把它作為一個控制字符。

  -s 把輸入作為一個命令保存在 Korn shell 的歷史記錄文件中。

  -u [ n ] 讀取一位數(shù)的文件描述符號碼 n 作為輸入。文件描述符可以用 ksh exec 內置命令打開。n 的缺省值是 0,表示的是鍵盤。值 2 表示標準錯誤。

  參數(shù)

  VariableName?Prompt 指定一個變量的名稱和一個要使用的提示符。當 Korn shell 是交互式時,它將把提示符寫到標準錯誤,并執(zhí)行輸入。Prompt 包含多于一個的字,必須用單引號或雙引號括起來。

  VariableName... 指定一個或多個由空格分隔的變量名。

  退出狀態(tài)

  這個命令返回下列出口值:

  0 成功完成。

  >0 檢測到文件結束符或一個錯誤發(fā)生。

  示例

  下列腳本打印一個文件,這個文件中每行的第一個字段被移動到本行的末尾。

  while read -r xx yy

  do

   print printf "%s %s/n" $yy $xx

  done < InputFile讀取一行,把它分成字段,并使用 "Please enter: " 作為提示符,請輸入:

  read word1?"Please enter: " word2系統(tǒng)顯示:

  Please enter:

  You enter:

  hello world變量 word1 的值應該是 "hello",變量 word2 應該是 "world."

  為創(chuàng)建一個共同進程,用 print -p 寫到共同進程,并用 read -p 從共同進程中讀取輸入,請輸入:

  (read; print "hello $REPLY")

  print -p "world"

  read-p line變量 line 的值應該是 "hello world."

  為把輸入行的副本保存為歷史文件中的一個命令,請輸入:

  read -s line < input_file如果輸入文件包含 "echo hello world," ,那么在歷史記錄文件中將會把 "echo hello world"保存為一個命令。

 

熱門評論
最新評論
發(fā)表評論 查看所有評論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數(shù): 0/500 (您的評論需要經過審核才能顯示)