欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux read命令的使用

 更新時間:2020年08月15日 15:45:09   作者:Dabelv  
這篇文章主要介紹了Linux read命令的使用,幫助大家更好的理解和學(xué)習(xí)Linux,感興趣的朋友可以了解下

1.命令簡介

read命令是Shell內(nèi)建命令,用于從標(biāo)準(zhǔn)輸入或-u選項指定的文件描述符中讀取單行,并將讀取的單行根據(jù)IFS變量分割成多個字段,并將分割后的字段分別賦值給指定的變量列表var_name。第一個字段分配給第一個變量var_name1,第二個字段分配給第二個變量var_name2,依次到結(jié)束。如果指定的變量名少于字段數(shù)量,則多出的字段連同分隔符分配給最后一個var_name,如果指定的變量命令多于字段數(shù)量,則多出的變量賦值為空。如果沒有指定任何var_name,則分割后的所有字段都存儲在特定變量REPLY中。當(dāng)然,其不僅可以賦值變量,還可以賦值數(shù)組。

IFS(Internal Field Separator)變量是Shell內(nèi)建的環(huán)境變量,用于read命令將讀取的單行分隔為多個字段。默認(rèn)取值為。

REPLY變量也是Shell內(nèi)建的環(huán)境變量,當(dāng)read命令未指明接收變量時,用于接收read命令讀取的單行內(nèi)容。

2.命令格式

read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]

3.選項說明

-a [aname]:將分裂后的字段依次存儲到指定的數(shù)組中,存儲的起始位置從數(shù)組的下標(biāo)0開始
-d [delim]:后跟一個標(biāo)志符,只有第一個字符有用,用以取代換行符作為行的結(jié)束標(biāo)志
-e:在輸入的時候可以使用命令補全功能,使用Tab鍵可自動不全當(dāng)前目錄下文件
-i [text]:If readline is being used to read the line, text is placed into the editing buffer before editing begins
-n [nchars]:后跟一個數(shù)字,定義輸入文本的長度,而不是讀取整行
-N [nchars]:后跟一個數(shù)字,定義輸入文本的長度,而不是讀取整行。但是如果一行不足nchars個字符,則忽略行分隔符繼續(xù)讀取下一行
-p [prompt]:從終端讀取輸入時,在輸入前打印提示信息
-r:屏蔽反斜杠\,如果沒有該選項,則\作為一個轉(zhuǎn)義字符,有的話\就是個正常的字符了
-s:安靜模式,在輸入字符時不再屏幕上顯示,例如login時輸入密碼
-t [timeout]:后面跟秒數(shù),定義輸入字符的等待時間
-u [fd]:后面跟文件描述符fd,從文件描述符中讀取

4.常用示例

(1)如果沒有指定變量,read會把傳入的值傳給REPLY,只要調(diào)用REPLY,只要調(diào)用REPLY,只要調(diào)用REPLY就可以引用。

[root@TENCENT64 ~]# read;echo "\$REPLY:$REPLY"
dablelv
$REPLY:dablelv

(2)read從終端讀取時指定一個提示語

[root@TENCENT64 ~]# read -p"input u password:";echo "\$REPLY:$REPLY"
input u password:123456
$REPLY:123456

(3)-t參數(shù)指定 read 命令等待輸入的秒數(shù),當(dāng)計時滿時,read命令返回一個非零退出狀態(tài)碼。

#!/bin/bash

if read -t 5 -p "輸入網(wǎng)站名:" name
then
  echo "你輸入的網(wǎng)站名是 $website"
else
  echo "\n抱歉,你輸入超時了。"
fi
exit 0

執(zhí)行程序不輸入,等待5秒后:

輸入網(wǎng)站名:
抱歉,你輸入超時了

(4)除了控制輸入時間,還可以使用-n選項控制輸入的字符數(shù)量。當(dāng)輸入的字符數(shù)目達(dá)到預(yù)定數(shù)目時,自動退出,并將輸入的數(shù)據(jù)賦值給變量。例如只接收2個輸入就退出:

#!/bin/bash

read -n2 -p "請隨便輸入兩個字符: " any
echo "\n您輸入的兩個字符是:$any"
exit 0

(5)-s選項能夠使輸入的數(shù)據(jù)不顯示在命令終端上(實際上,輸入的內(nèi)容是顯示的,只是read命令將文本顏色設(shè)置成與背景相同的顏色)。輸入密碼常用這個選項。

#!/bin/bash

read -s -p "請輸入您的密碼:" pass
echo "\n您輸入的密碼是 $pass"
exit 0

執(zhí)行程序輸入密碼后是不顯示的:

請輸入您的密碼:
您輸入的密碼是 runoob

(6)讀取文件

每次調(diào)用 read 命令都會讀取文件中的 “一行” 文本。當(dāng)文件沒有可讀的行時,read 命令將以非零狀態(tài)退出。

while read var1 var2
do
	echo $var1 $var2
done < file.txt

以上就是Linux read命令的使用的詳細(xì)內(nèi)容,更多關(guān)于Linux read命令的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Apache多路復(fù)用模塊(MPMs)介紹

    Apache多路復(fù)用模塊(MPMs)介紹

    這篇文章主要介紹了Apache多路復(fù)用模塊(MPMs)介紹,MPM,也叫多道處理模塊(Multi Processing Module),關(guān)系到整個HTTP會話,本文就介紹它的相關(guān)知識,需要的朋友可以參考下
    2015-01-01
  • Apache之AllowOverride參數(shù)使用說明

    Apache之AllowOverride參數(shù)使用說明

    通常利用Apache的rewrite模塊對 URL 進(jìn)行重寫的時候, rewrite規(guī)則會寫在 .htaccess 文件里。但要使 apache 能夠正常的讀取.htaccess 文件的內(nèi)容,就必須對.htaccess 所在目錄進(jìn)行配置。
    2011-01-01
  • Apache Iceberg 底層數(shù)據(jù)查詢原理解析

    Apache Iceberg 底層數(shù)據(jù)查詢原理解析

    Apache Iceberg是一個開源表格格式,用于大型分析數(shù)據(jù)集,本文主要介紹了如何通過快照、Manifest文件和元數(shù)據(jù)文件查詢Iceberg表的數(shù)據(jù),通過解析元數(shù)據(jù)文件獲取當(dāng)前表的快照ID,進(jìn)而讀取對應(yīng)的Avro文件和Manifest文件中的Parquet數(shù)據(jù)文件,感興趣的朋友一起看看吧
    2024-09-09
  • 詳解在linux中如何確定指定端口是否開啟

    詳解在linux中如何確定指定端口是否開啟

    這篇文章主要為大家詳細(xì)介紹了在linux中如何確定指定端口是否開啟,文中主要為大家介紹了四種常見方法,感興趣的小伙伴可以參考一下
    2024-10-10
  • Linux下如何生成coredump文件

    Linux下如何生成coredump文件

    這篇文章主要介紹了Linux下如何生成coredump文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Linux服務(wù)器刪除文件夾、刪除文件、解壓命令的方法

    Linux服務(wù)器刪除文件夾、刪除文件、解壓命令的方法

    今天小編就為大家分享一篇Linux服務(wù)器刪除文件夾、刪除文件、解壓命令的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Linux運維基礎(chǔ)交換分區(qū)和lvm管理教程

    Linux運維基礎(chǔ)交換分區(qū)和lvm管理教程

    這篇文章主要介紹了Linux運維基礎(chǔ)中的交換分區(qū)和lvm管理教程,附含源碼示例,有需要的朋友可以借鑒參考下,祝大家共同學(xué)習(xí)共同進(jìn)步
    2021-09-09
  • ubuntu14.04安裝jdk1.8的教程

    ubuntu14.04安裝jdk1.8的教程

    這篇文章主要介紹了ubuntu14.04安裝jdk1.8的教程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • 關(guān)于Linux下對于makefile的理解

    關(guān)于Linux下對于makefile的理解

    下面小編就為大家?guī)硪黄P(guān)于Linux下對于makefile的理解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Apache安裝配置避坑指南

    Apache安裝配置避坑指南

    這篇文章主要介紹了Apache安裝配置避坑,很多小伙伴會遇到兩個問題,一個是80端口被占用另一個是監(jiān)聽端口443端口被占用,本文給大家分享解決方法,需要的朋友可以參考下
    2022-09-09

最新評論