Linux系統shell工具打印輸出

來源:文萃谷 2.63W

shell腳本都是以#!/bin/bash開頭;這是固定的寫法,其中/bin/bash是bash命令的路徑。那麼Linux系統shell工具如何打印輸出呢?跟yjbys小編一起來看看吧!

Linux系統shell工具打印輸出

一般都會通過chmod授予shell腳本的可執行權限。

在shell腳本中的打印輸出通常會有echo和printf兩種,前者會自動換行。

在shell中如果用雙引號("")作為打印輸出的內容時,如果雙引號中有特殊字符需要在特殊字符前加上轉義字符,當然也可以使用單引號或者不使用引號直接輸出,使用單引號或者不使用就不需要用到轉義字符。

  格式替代符

有一些常用的格式替代符會經常在打印輸出中被用到,格式替代符只能用在printf輸出中。

%-5s:表示5個字符寬度,其中的-表示左對齊

%-4.2f:其中的f表示浮點型,4.2代表長度為4個字符且小數點2位,如果小數點超過2會進行四捨五入,-表示左對齊。

  整形:

%d:整數的參數會被轉成一有符號的十進制數字

%u:整數的參數會被轉成一無符號的十進制數字

%o:整數的參數會被轉成一無符號的八進制數字

%x:整數的參數會被轉成一無符號的十六進制數字,並以小寫abcdef表示

%X:整數的參數會被轉成一無符號的十六進制數字,並以大寫ABCDEF表示

  浮點型數:

%fdouble型的參數會被轉成十進制數字,默認取小數點以下六位,四捨五入

%edouble型的參數以指數形式打印,有一個數字會在小數點前,六位數字在小數點後,而在指數部分會以小寫的e來表示.

%E與%e作用相同,唯一區別是指數部分將以大寫的E來表示.

%gdouble型的參數會自動選擇以%f或%e的格式來打印,其標準是根據欲打印的數值及所設置的有效位數來決定.

%G與%g作用相同,唯一區別在以指數形態打印時會選擇%E格式.

  字符及字符串:

%c讀字符串的`第一個字符

%s輸出指定寬度的字符內容.

%p如果是參數是"void*"型指針則使用十六進制格式顯示

  打印輸出

在寫腳本的時候更多的會使用echo作為打印輸出,且習慣性的會使用雙引號。

echo

[root@localhosttmp]#echo"helloword"

helloword

printf

默認printf是不換行的

[root@localhosttmp]#printf"helloword"

helloword[root@localhosttmp]#

需要換行加上n參數

[root@localhosttmp]#printf"hellowordn"

helloword

[root@localhosttmp]#

編寫shell腳本

#!/bin/bash

printf"%-5s%-10s%-4sn"NoNameMark;

printf"%-5s%-10s%-4.2fn"1aaa10.111;

printf"%-5s%-10s%-4.2fn"2bbb20.146;

授予腳本執行權限:chmodu+

如果使用echo就不能用格式替代符

#!/bin/bash

echoNoNameMark;

echo1aaa10.111;

echo2bbb20.146;

注意事項

在echo,printf中使用-e,-n參數時,-e,-n應該出現在命令行其它字符之前。

-e:如果要在echo的雙引號使用轉義序列作為參數得需要使用-e參數

-n:忽略末尾的換行符

不使用-e參數

[root@localhosttmp]#echo"1n2"

1n2

使用-e參數

[root@localhosttmp]#echo-e"1n2"

轉義序列:

/n:換行

/t:tab鍵

彩色輸出

字體顏色包括:0=重置,30=黑色,31=紅色,32=綠色,33=黃色,34=藍色,35=洋紅,36=青色,37=白色

背景顏色包括:0=重置,40=黑色,41=紅色,42=綠色,43=黃色,44=藍色,45=洋紅,46=青色,47=白色

echo-e"e[1;32mhelloworde[0m"

e[1;32m:將字體顏色設為綠色,e[0m:將顏色重置

熱門標籤