




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
初識Shell腳本項目4:數(shù)據(jù)輸入輸出目錄/Contents010203echo命令printf命令read命令01echo命令echo命令echo是一個常用的Shell命令。它的主要功能是輸出字符串,可以將指定的文本字符串輸出到標(biāo)準(zhǔn)輸出(默認(rèn)是屏幕),也可以用于輸出提示信息、調(diào)試信息、結(jié)果信息等。echo命令基本語法如下:echo[options]string序號命令選項描述1-n不輸出換行符,繼續(xù)在當(dāng)前行輸出2-e開啟轉(zhuǎn)義字符,可以使用轉(zhuǎn)義字符來輸出特殊字符3-E禁用轉(zhuǎn)義字符(默認(rèn)行為)其中,options表示可選的參數(shù),string表示要輸出的字符串。echo命令選項如下表所示。echo命令使用以下命令輸出字符串,當(dāng)輸出的字符串中包含空格或其他特殊字符時,通常使用引號標(biāo)識字符串。例如:[opencloud@server~]$echo"Hello,World!"Hello,World![opencloud@server~]$echo-e"Hello,\tWorld!"Hello,World![opencloud@server~]$catecho.sh#!/bin/bashname="John"age=18echo"Mynameis$name,Iam$ageyearsold."#執(zhí)行腳本,輸出結(jié)果如下[opencloud@server~]$bashecho.shMynameisJohn,Iam18yearsold.使用以下命令輸出帶有轉(zhuǎn)義字符的字符串,例如:在腳本中,使用echo命令輸出變量的值,例如:echo命令在Shell中,echo命令支持一些常見的轉(zhuǎn)義符,可以用來輸出特殊字符。在使用轉(zhuǎn)義符時,將字符串放在雙引號之內(nèi)。echo命令支持的轉(zhuǎn)義符如下表所示。序號轉(zhuǎn)義符含義1\反斜線2\b輸出退格字符(刪除字符)3\c不換行輸出字符串,繼續(xù)在當(dāng)前行輸出4\f輸出換頁符5\n輸出換行符6\r輸出回車符(回到行首)7\t輸出水平制表符8\v輸出垂直制表符9\e通常用于表示ANSI轉(zhuǎn)義碼,以便在終端中設(shè)置文本的顏色、樣式echo命令使用echo命令和常見轉(zhuǎn)義字符的一些示例:#使用echo命令不換行輸出字符串,繼續(xù)在當(dāng)前行輸出[opencloud@server~]$echo-e"Hello,\cWorld!"Hello,[opencloud@server~]$#輸出轉(zhuǎn)義字符:[opencloud@server~]$echo-e"\e"
#輸出換頁符[opencloud@server~]$echo-e"Hello,\fWorld!"Hello,World!#輸出換行符[opencloud@server~]$echo-e"Hello,\nWorld!"Hello,World!#輸出水平制表符[opencloud@server~]$echo-e"Hello,\tWorld!"Hello,World!#輸出垂直制表符[opencloud@server~]$echo-e"Hello,\vWorld!"Hello,World!02printf命令printf命令在Shell腳本中,printf命令主要用于格式化輸出字符串,輸出帶有特定格式的信息,例如輸出字符串、數(shù)字、字符、符號或者其他值。它與echo命令類似,但支持更多的格式化選項。printf命令基本語法如下:printfformat[argument]...format表示一個字符串,用于指定輸出的格式。它可以包含轉(zhuǎn)義序列,這些轉(zhuǎn)義序列用于指定輸出的格式和內(nèi)容。Argument表示一個或多個參數(shù),用于提供要輸出的內(nèi)容。printf命令printf命令需要在字符串中使用占位符,然后指定要輸出的值。它可以通過在字符串中包含一些格式說明符,然后按照格式說明符指定的格式將參數(shù)輸出到標(biāo)準(zhǔn)輸出。例如:printf"%-10s%-8s%-4s\n"姓名性別體重/kgprintf"%-10s%-8s%-4.2f\n"郭靖男66.1234printf"%-10s%-8s%-4.2f\n"楊過男68.6543printf"%-10s%-8s%-4.2f\n"郭芙女47.9876#輸出姓名
性別
體重/kg郭靖
男66.12楊過
男68.65郭芙
女47.99示例中,%-10s表示輸出一個左對齊且寬度為10的字符串,%-8s表示輸出一個左對齊且寬度為8的字符串,%-4.2f表示輸出一個左對齊且寬度為4,小數(shù)點(diǎn)后保留2位的浮點(diǎn)數(shù)。printf命令printf命令使用的占位符如下表所示。printf命令基本語法如下:序號占位符說明1%s輸出字符串(string)2%c輸出單個字符(character)3%d輸出十進(jìn)制整數(shù)(decimalinteger)4%f輸出浮點(diǎn)數(shù)(floatingpointnumber)5%o輸出無符號八進(jìn)制整數(shù)(octalinteger)6%e輸出科學(xué)記數(shù)法(scientificnotation)形式的浮點(diǎn)數(shù)7%b輸出二進(jìn)制整數(shù)(binaryinteger)8%n輸出目前為止輸出的字符總數(shù)9%g輸出指定精度的浮點(diǎn)數(shù)10%x輸出無符號十六進(jìn)制整數(shù)(hexadecimalinteger)(小寫字母形式)11%X輸出十六進(jìn)制整數(shù)(大寫字母形式)12%(datefmt)T將參數(shù)以指定的日期和時間格式輸出(datefmt為日期和時間格式字符串)printf命令printf"Thefirstletterofthealphabetis%c\n"‘a(chǎn)’#輸出Thefirstletterofthealphabetisacharacters=('a''b''c')printf"Thecharactersare:%c%c%c\n""${characters[@]}“#輸出Thecharactersare:abcnames=('Alice''Bob''Eve')printf"Thenamesare:%s%s%s\n""${names[@]}“#輸出Theletteris:Zprintf命令使用%c格式化字符的示例如下。(1)輸出單個字符:(2)輸出字符數(shù)組中的所有字符:(3)輸出字符變量的值:printf命令printf"Thenameofthiswebsiteis%s\n""StackOverflow“#輸出ThenameofthiswebsiteisStackOverflownames=('Alice''Bob''Eve')printf"Thenamesare:%s%s%s\n""${names[@]}“#輸出Thenamesare:AliceBobEvegreeting='Hello,world!'printf"Thegreetingis:%s\n""$greeting“Thegreetingis:Hello,world!printf命令使用%s格式化字符串的示例如下。(1)輸出單個字符串:(2)輸出字符串?dāng)?shù)組中的所有字符串:(3)輸出字符變量的值:printf命令printf命令使用%d格式化字符串的示例如下。printf"Thenumberis:%d\n"42#輸出Thenumberis:42numbers=(123)printf"Thenumbersare:%d%d%d\n""${numbers[@]}“#輸出Thenumbersare:123count=5printf"Thecountis:%d\n""$count“#輸出Thecountis:5(1)輸出單個整數(shù):(2)輸出字符串?dāng)?shù)組中的所有字符串:(3)輸出字符變量的值:printf命令printf命令使用%b格式化字符串的示例如下。printf"Thenumberis:%b\n"5#輸出Thenumberis:101numbers=(567)printf"Thenumbersare:%b%b%b\n""${numbers[@]}“#輸出Thenumbersare:567binary=1101printf"Thebinarynumberis:%b\n""$binary“#輸出Thebinarynumberis:1101(1)輸出單個二進(jìn)制整數(shù):(2)輸出字符串?dāng)?shù)組中的所有字符串:(3)輸出字符變量的值:printf命令printf命令使用%n格式化字符串的示例如下。printf"Thereare%dcharactersinthisstring.%n"8countecho"Thevalueofcountis:$count“#輸出Thereare14charactersinthisstring.Thevalueofcountis:38strings=('Thisisstring1''Thisisstring2')printf"Thereare%dcharactersinstring1.%n"100count1printf"Thereare%dcharactersinstring2.%n"1000count2echo"Thevalueofcount1is:$count1"echo"Thevalueofcount2is:$count2“#輸出Thereare100charactersinstring1.Thereare1000charactersinstring2.Thevalueofcount1is:37Thevalueofcount2is:38(1)輸出單個二進(jìn)制整數(shù):(2)在字符串?dāng)?shù)組中使用%n:printf命令printf命令使用%(datefmt)T格式化日期和時間的示例如下。printf"Thecurrentdateandtimeis:%(%Y-%m-%d%H:%M:%S)T\n"#輸出Thecurrentdateandtimeis:2024-05-2517:38:32printf"Thedateandtimeis:%(%a%b%d%I:%M%p%Z%Y)T\n"#輸出Thedateandtimeis:ThuApr2505:39PMCST2024(1)輸出當(dāng)前日期和時間:(2)在字符串?dāng)?shù)組中使用%n:03read命令read命令在Shell腳本中,read命令是一個內(nèi)置命令,用于從標(biāo)準(zhǔn)輸入(通常是鍵盤)中讀取一行文本并將其賦值給一個或多個變量。該命令通常用于在腳本運(yùn)行時從用戶那里獲取輸入。read命令的基本語法如下:read[options]variable1[variable2...]其中,options表示可選的選項,可以用于指定輸入的格式;variable1表示一個變量名,將保存讀取的輸入值;variable2表示可選項,用于將多個變量賦為輸入的值。read命令read命令常見選項如下表所示。序號選項描述1-p指定提示符,用于在輸入之前展示給用戶2-r禁止轉(zhuǎn)義字符的解釋3-n指定最多讀取的字符數(shù)4-d指定一個字符作為結(jié)束符,遇到此字符時將會終止讀取5-s禁止回顯用戶輸入的字符,隱藏其輸入的內(nèi)容6-t指定超時時間,即在指定的時間內(nèi)沒有輸入將會終止讀取使用read命令讀取變量并輸出:[opencloud@server~]$catread.sh#!/bin/bashread-p"Wh
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球及中國摩托車氧傳感器行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國成人掃盲軟件行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國減肥計劃行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國業(yè)務(wù)流程自動化(BPA)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國PVC增塑劑行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球與中國高頻交易行業(yè)市場發(fā)展分析及前景趨勢與投資研究報告
- 2025-2030光學(xué)玻璃產(chǎn)業(yè)市場深度分析及前景趨勢與投資研究報告
- 2025-2030兒童乘座車市場前景分析及投資策略與風(fēng)險管理研究報告
- 2025-2030保溫節(jié)能行業(yè)發(fā)展分析及投資戰(zhàn)略研究報告
- 2025-2030便攜式水質(zhì)計行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 信用風(fēng)險度量第六章-KMV模型課件
- 小學(xué)硬筆書法課教案(1-30節(jié))
- 基于CAN通訊的儲能變流器并機(jī)方案及應(yīng)用分析報告-培訓(xùn)課件
- 醫(yī)院清潔消毒與滅菌課件
- 消防安裝工程施工方案Word版
- 軟管管理規(guī)定3篇
- 關(guān)于對領(lǐng)導(dǎo)班子的意見和建議
- 【課件】學(xué)堂樂歌 課件-2022-2023學(xué)年高中音樂人音版(2019)必修音樂鑒賞
- 納布啡在胃腸鏡麻醉中的臨床觀察-課件
- 常用手術(shù)器械手工清洗
- 2022中西醫(yī)執(zhí)業(yè)醫(yī)師實踐技能疾病對照診斷內(nèi)科
評論
0/150
提交評論