国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux Shell腳本系列教程(二):終端打印命令詳解

2020-05-27 13:02:16
字體:
來源:轉載
供稿:網友

   這篇文章主要介紹了Linux Shell腳本系列教程(二):終端打印命令詳解,本文著重講解了echo終端打印、printf終端打印兩個打印出輸出命令,需要的朋友可以參考下

  終端打印

  終端是交互式工具,用戶可以通過它與shell環境進行交互。在終端中打印文本是大多數shell腳本和工具日常需要執行的基本任務。通過終端打印,人們可以知道系統的運行狀態,這對用戶來說是至關重要的。

  echo終端打印

   代碼如下:

  echo "Welcome to Bash"

  echo Welcome to Bash

  echo Welcome to Bash

  以上三種方法的效果是一樣的,輸出內容都是“Welcome to Bash”,并在末尾添加換行符。在默認情況下,echo在每次調用后會添加一個換行符,而無需手動輸入換行符。此處,建議養成一種習慣,對于其他的方法了解即可。

  使用雙引號時的限制

  使用雙引號輸出字符串時,字符串內不能含有特殊字符(!),或者要在特殊字符前加轉義字符。使用單引號或者不使用引號,也可以正常輸出特殊字符。

  代碼如下:

  echo "cannot include !" #這種情況下將會報錯

  echo "cannot include !" #這種情況下可以正常輸出!

  echo cannot include ! #這種情況下可以正常輸出!

  echo cannot include ! #這種情況下可以正常輸出!

  使用單引號的限制

  在使用單引號輸出字符串時,變量替換將會失效。使用雙引號或者不使用引號可以正常輸出被替換的變量。

   代碼如下:

  var="abcd"

  echo 1234$var #這種情況下將輸出 1234$var

  echo 1234$var #這種情況下將輸出 1234abcd

  echo "1234$var" #這種情況下將輸出 1234abcd

  不使用引號時的限制

  在不使用引號輸出字符串的情況下,無法顯示分號(;),因為分號在Bash中被用作命令定界符。使用單引號或者雙引號可以輸出分號。

  代碼如下:

  echo hello;hello #第一個hello被當成字符串輸出,第二個被當成命令

  printf終端打印

  printf使用的參數和C語言中的printf函數一樣,使用引用文本或由空格分隔的參數。在printf函數中,我們可以使用格式化字符串,指定字符串的寬度、左右對齊方式等。在默認情況下,printf不會在行尾添加換行符,需要手動添加。

   代碼如下:

  printf "Hello world" #使用引用字符

  printf "%-5s %-10s %-4sn" No Name Mark #指定寬度及左對齊方式

  printf "%-5s %-10s %-4sn" 1 Sarath 80.3456

  工作原理

  %s,%c,%d,%f都是格式替換字符,其所對應的參數可以置于帶引號的格式字符串之后。

  %-5s指明了一個格式為左對齊且寬度為5的字符串替換,-表示左對齊,若不指定對齊方式,則默認采用右對齊方式。寬度指定了保留給某個變量的字符數,如果要輸出的內容寬度不足,則用空格填充,若多于指定寬度,則超出部分被丟棄。

  %4.2f表示指定小數可以保留兩個小數位,要注意的是4并不代表整數部分的位數,也不代表整數位和小數位的和。

  注意:使用echo和printf的命令選項時,要保證選項出現在命令行內所有字符串之前,否者Bash會將選項視為另一個字符串。

  補充內容

  在echo中使用轉義字符

  在默認情況下,echo會自動在輸出字符串末尾添加換行符,可以使用-n選項來忽略結尾的換行符。echo同樣接受雙引號字符串內的轉義序列作為參數。如果需要使用轉義序列,則采用echo -e “包含轉義序列的字符串”這種形式,在ubuntu14.04中,不需要添加-e選項,若添加,則-e選項會被作為字符串的一部分輸出。

      代碼如下:

  echo "Hello World" #將在末尾添加換行符

  echo -n "Hello Wordl" #末尾不會添加換行符

  echo -e "1t2t3" #將輸出 -e 1 2 3

  echo "1t2t3" #將輸出1 2 3

  打印彩色輸出

  在終端中生成顏色輸出,有助于我們從大量文本中快速定位特定的信息,我們可以使用轉義序列來實現顏色輸出。

  每種文本顏色都有對應的顏色碼。

   代碼如下:

  echo -e "e[1;31m This is red text e[0m"

  echo -e "e[1;41m This is red background e[0m"

  #ubuntu14.04不支持這種方式改變文本或者背景顏色

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 化德县| 沂水县| 武义县| 南漳县| 南木林县| 五峰| 鄂伦春自治旗| 紫阳县| 会宁县| 右玉县| 吐鲁番市| 涟源市| 巍山| 潍坊市| 精河县| 沅陵县| 宝鸡市| 夹江县| 永昌县| 乐业县| 墨竹工卡县| 东乌| 沙田区| 尼玛县| 华宁县| 略阳县| 北海市| 青阳县| 孟连| 沁源县| 武胜县| 平凉市| 金堂县| 尚志市| 桑植县| 蒲江县| 英德市| 崇仁县| 伊金霍洛旗| 巴林右旗| 泽州县|