Shell自動化運維學習
阿新 • • 發佈:2021-08-29
執行shell指令碼的多種方式:
1.[root@localhost ~]# bash file1 //第一種方式 2.[root@localhost ~]# sh file1 //第二種方式 3.[root@localhost ~]# . file1 //第三種方式 4.[root@localhost ~]# source file1 //第四種方式
其中,1、2方式是子shell執行,3、4方式是本shell執行
定義變數:
[root@localhost ~]# name="majiajun 123" //注意!等號兩邊不能有空格。且如果變數的值有空格,需要用引號包含
使用變數:
[root@localhost ~]# echo $name
重複定義變數:
[root@localhost ~]# name=majiajun [root@localhost ~]# name=123 [root@localhost ~]# echo $name //重複定義變數會導致變數的值被覆蓋 輸出結果:123
變數追加內容:
[root@localhost ~]# name=123 [root@localhost ~]# name="$name"456 //一定要加引號,才能看做一個整體。這樣可以實現追加效果。 [root@localhost ~]# echo $name123456
也可以使用另一種方式追加內容:
[root@localhost ~]# name=123 [root@localhost ~]# name=${name}456 //同理,使用大括號內變數名的方式表示一個整體 [root@localhost ~]# echo $name 123456
變數的檢視:
[root@localhost ~]# set | gerp name //set命令可以檢視系統所有變數 name=123456
變數的刪除:
[root@localhost ~]# unset name //刪除變數名為name的變數,不需要加$
變數的使用案例:(重點不是如何使用運算子判斷是否線上,重點是明白變數的使用技巧)
read -p "您要查詢的ip是?" ip //讓使用者輸入要查詢的IP地址,放入ip變數內 ping -c 1 ${ip} &> /dev/null && echo ${ip} up || echo ${ip} down //判斷使用者是否線上,並輸出變數內的ip地址+結果