久久国产乱子伦精品免费M,亚洲一区二区三区91,欧美国产在线视频,国产精品视频久久

shell入門第七講

1、引號細說
我們之前的學習中給大家講解了變量賦值及引用的操作,那么講解中說了一下賦值中,如果值包含有空格,我們一定要加上引號,單引號和雙引號都是可以的,比如:
1.1、使用雙引號
bash [root@localhost ~]# VAR="a b c" [root@localhost ~]# echo ${VAR} a b c
1.2、使用單引號
bash [root@localhost ~]# VAR='a b c' [root@localhost ~]# echo ${VAR} a b c
這樣子一看其實區別是沒有的,都可以達到一個變量賦值的目的。
1.3、單、雙引號引用操作
定義一個變量的值時,我們還可以再次引用其他的變量,比如
bash [root@localhost ~]# NUM=666 [root@localhost ~]# VAR="a b c ${NUM}"
我們先定義了變量NUM。然后再定義第二個變量VAR時,可以把引用變量NUM的操作定義在VAR的值中?,F在我們打印一下VAR變量值來看看效果
bash [root@localhost ~]# echo ${VAR} a b c 666
可以看到在打印 a b c的同時也把NUM的變量值打印出來了,可以看出來在打印變量操作中,如果變量的值包含了打印其他變量的操作,那么會一同打印出來。這樣的操作在實際工作中也是非常常用的。
現在我們再來看看如果使用單引號是什么結果。
bash [root@localhost ~]# NUM=666 [root@localhost ~]# VAR='a b c ${NUM}' [root@localhost ~]# echo ${VAR} a b c ${NUM}
可以明顯看到VAR變量中的NUM的值并沒有打印出來,而是原樣返回了結果。因此我們可以知道
單引號會使shell忽略特殊字符的含義,雙引號則可以解釋shell中特殊符號原有的意義。這也就是我們常說的單引號是強引用,雙引號是弱引用。
2、命令結果替換
命令結果替換操作就是把一個命令的結果賦值給另外一個變量的過程,比如
bash [root@localhost ~]# NUM=666 [root@localhost ~]# echo ${NUM} 666 [root@localhost ~]# echo ${NUMM}
我們還是定義了變量NUM的值為666,而NUMM變量沒有值,因此打印為空,現在我使用反引號`來賦值給其他變量bash [root@localhost ~]# NUMM=echo ${NUM}` [root@localhost ~]# echo ${NUMM} 666
反引號就是先執行反引號引起來的命令,把這個命令執行完畢后再執行其他的操作。
比如我們這里就是先echo打印NUM變量的值,然后把這個值再次賦值給NUMM變量,因此現在NUMM也是有變量值了,這就是將命令結果作為變量值的一個操作。
反引號是鍵盤上ESC下面的一個按鍵,反引號等效于使用 $() ,都是用于執行shell命令的,比如
bash [root@localhost ~]# ps aux | grep bash | head -1 | awk '{print $2}' 6283 [root@localhost ~]# PID=$(ps aux | grep bash | head -1 | awk '{print $2}') [root@localhost ~]# echo $PID 6283
我們上面是第一條命令是獲取bash進程號,使用$()就是先把此進程號獲取出來,然后賦值給PID變量,最后我們打印出來結果,一切符合預期。

相關新聞

歷經多年發展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網絡安全、云原生、Go、Python開發專業人才培訓機構!

    1. 主站蜘蛛池模板: 东乡族自治县| 堆龙德庆县| 鄄城县| 山西省| 侯马市| 江北区| 合山市| 南木林县| 柳江县| 古丈县| 安丘市| 大石桥市| 蓝田县| 钟祥市| 黄陵县| 武强县| 织金县| 泽州县| 通榆县| 隆子县| 巩留县| 高邑县| 翁牛特旗| 沂水县| 固始县| 淮滨县| 鹰潭市| 朝阳市| 黄骅市| 禄丰县| 喀什市| 望城县| 中阳县| 文昌市| 万全县| 霍山县| 诏安县| 青田县| 永安市| 浦城县| 盘山县|