當前位置:首頁 » 網頁前端 » shell腳本列印一個變數值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

shell腳本列印一個變數值

發布時間: 2023-03-14 08:07:00

❶ shell變數的使用及輸入輸出

(1),命名只能使用英文字母,數字和下劃線,首個字元不能以數字開頭。
(2),中間不能有空格,可以使用下劃線(_)。
(3),不能使用標點符號。
(4),不能使用bash里的關鍵字(可用help命令查看保留關鍵字)

shell的變數只有字元串類型,所以當不用引號引起來的時候,要暴走變數的值不包含特殊符號,如空格,美元符,&符.

使用一個定義過的變數,只要在變數名前面加美元符號即可,如:

使用 readonly 命令可以將變數定義為只讀變數,只讀變數的值不能被改變。

運行:

使用 unset 命令可以刪除變數。語法:

示例

運行:

(1)單引號
單引號里的任何字元都會原樣輸出,單引號字元串中的變數是無效的
(2)雙引號
雙引號里可以有變數,也可以出現轉義字元

(1)定義數組
方法一:

方法二:

(2)讀取數組內容

(3)獲取數組長度

結果:

結果:

(1).輸入不在終端顯示
read -p "Input passwd:" -s Passwd
echo $Passwd
(2)限時輸入,否則退出
延遲五秒,沒有輸入將自動退出:
read -p "Input a number:" -t 5 Number
(3) 讀取限定字元
從輸入中取 5 個字元:
read -p "Input a word:" -n 5 Word

<< 可以被認為是一種重定向符.重定向腳本文件中的一行作為一個命令輸入.
操作符<<被放在輸入重低昂小的命令之後,緊跟在<<的各行作為命令的輸入,輸入的結尾通過文件結束符(ctrl+D)表示,也可以自己定義定界符,定界符後的單詞作為輸入各行借宿的定界符.

❷ 如何在shell腳本中使用變數

1、linux shell中的變數一般定義格式為:var=value。其中var是變數名稱,=是賦值,value是給變數賦的值。比如下面的變數定義。

a=12;
b="helloworld"

2、注意變數名稱的第一個字元不可以是數字,但是可以是下劃線。如下示例則為非法的變數名。

3、要使用變數的值,在變數前面加上$符號即可。比如下面的示例:

123=123//這是錯誤的變數名稱
_123=123//這是合法的。

❸ 如何在shell腳本中使用變數

在shell腳本中變數的定義,只能以字母和下劃線開始,區分大小寫,可以包含數字、字母下劃線。

示例代碼,讀取用戶輸入到變數myvar,然後再輸入。

#!/bin/bash

echo "input myvar"

read myvar
echo "myvar is $myvar"

效果如下:

❹ shell腳本,我從root用戶切換到普通用戶之後,新定義了一個變數,但列印變數的值是空的,怎麼回事

在$前面加上轉義, echo ${Result1} 替換成echo ${Result1}


這個問題跟root用戶切換到普通用戶什麼的沒關系,而是因為你在用here-document的時候,並沒有用雙引號或單引號將!引用起來,或用轉義符將here-document中的元字元$轉義,這時候here-document中的文本將被擴展,即參數替換被啟用。

你運行一下這段腳本,看看Result1值的變化,就會明白了

#!/bin/bash
Result1="001"
echo "Parameter substitution is enabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
echo "Parameter substitution is disabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
bash<<'EOF'
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF