shell學習之變量和引號
阿新 • • 發佈:2018-04-20
11.變量的概念:變量是程序中保存用戶的一塊內存空間,變量名就是這塊內存空間的地址,變量的值保存在計算機內存中。變量的定義:可以簡單的理解,變量就是內存中一個鍵值關系對,如下 A可以理解為其在內存中的地址,1為其具體的內容。
[root@node-2 ~]# A=1
[root@node-2 ~]# echo $A
1
2.變量和引號:shell中一共有三種引號,單引號‘ ‘,雙引號" "以及反引號`,其中單引號括起來的字符都作為普通字符出現;雙引號括起來的字符除了$ \
‘ ‘ ,這幾個字符仍保留其特殊功能,其余字符仍作為普通字符;反引號中的內容先被shell解釋為命令執行,其輸出結果作為後續的輸入。
雙引號"$ \ `` ‘‘ 可以轉義 "
[root@node-2 ~]# str="hello world"#被雙引號括起來的 hello+空格+world 作為一個字符串賦值給了str
[root@node-2 ~]# echo $str
hello world
單引號 ‘ 裏面的字符只代表字符本身‘
[root@node-2 ~]# str="hello"
[root@node-2 ~]# echo "$str"
hello
[root@node-2 ~]# echo ‘$str‘
$str
[root@node-2 ~]#
反引號`` [root@node-2 ~]# pwd /root [root@node-2 ~]# MyDir=`pwd`#pwd命令獲取當前的目錄位置,然後把該位置賦值給MyDir [root@node-2 ~]# echo $MyDir /root
綜合的
#!/bin/bash
D="Play"
A=""pwd"+‘pwd‘+`pwd`-$D-"$D"-‘$D‘-`$D`"
echo $A
結果:
[root@node-2 ~]# sh test.sh
test.sh: line 3: Play: command not found
pwd+‘pwd‘+/root-Play-Play-‘Play‘-
shell學習之變量和引號