您好,登錄后才能下訂單哦!
本篇內容主要講解“Shell位置參數怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Shell位置參數怎么使用”吧!
shell編程
shell變量的特點?
——弱類型
——默認字符串型(字符串型是不能直接進行加減乘除數值運算,因此需要進行數值運算時,需要將shell變量聲明為數值型,不要使用默認值)
——可以把指令寫到一個文件中,shell對這個腳本操作就可以一次執行多個操作。但是如果一條條執行會很麻煩,shell支持條件控制、循環嵌套特性。
說明:
一定要在第一行執行解析器,我們使用的是bash,當然也可以使用python、ruby寫腳本。
我們在學會一個命令時,放在命令行中就是命令,放到腳本中就是一條語句。
腳本中命令可以直接羅列,也可以包含到函數之中,通過呼叫函數名執行:
命令對空格敏感,腳本語句對空格變態地敏感!
腳本語言:
引用第一個sh時,使用$0($表示位置)。$#代表一共多少個參數。
操作:
我們在執行任意一個腳本程序的時候,并不是在這個shell執行,而是新開一個shell,雖然我們看不到這個shell。
操作:
注:雖然得到了腳本的目的,但是當前目錄并未改變,也就是說不是在這個shell中執行的操作。
其中vim中語句為:
如果想在當前shell執行語句:
注:當前工作目錄已經變了。
declare命令
——用來聲明變量類型
格式:
注:在這里要格外注意,我們需要添加一個聲明時用“-”,而不是“+”。
舉例:
把變量聲明為數值型
注:這里我們可以明確看出,在默認情況下變量為字符型,因此c默認輸出為11+22,如果想想要輸出加法運算的結果,則需要將c聲明為int類型(a、b不需要聲明為int,因為聲明c后,在進行a+b運算時會自動將后面進行轉化)。
可以查看變量屬性:
聲明數組變量
操作:
注:在查看數組的時候,$后面需要添加{},在不加下標,直接以數組名給出時默認顯示第一個數組元素,加上*時,顯示全部。
聲明環境變量
注:環境變量的聲明實際上也是declare命令。-X表示聲明為環境變量。如果這樣操作:
Export aa,即表示把aa聲明為環境變量,則在執行bash-->set這兩個指令時只能看到aa,不能看見bb。Bb只會出現在當前目錄。
聲明變量只讀屬性
操作:
注:這里不能修改和刪除。甚至我們執行撤銷屬性都不可以。在實際應用中要格外注意,如果將制度屬性的變量加到某一系統環境變量中在開機時會自啟動,這樣會出錯。我們這里設置的是臨時環境變量,系統重啟后消失。因此,只讀屬性并不是很好用,實際中盡量少用。
查看變量屬性
數值運算方式
數值運算方法1
注:這種方法需要敲很多指令,麻煩。
方法2:expr或let數值運算工具
操作:
注:在沒有空格的時候不會進行直接加的運算,而是當做字符串運算。
方法3:”$((運算符))”或”[運算符]”
注:推薦這種寫法”$((運算符))”
區分以下的方式:$(運算符)——它的作用是把系統命令先執行,再把命令的結果賦予變量。
運算符
注:優先級越高數值越大。實際中用到的數值運算并不多。
變量測試
簡介
只針對shell語言有效,比較復雜。在實際中可以用其他方式取代,格式復雜,語法簡單,了解即可。
注:在優化時用到,比如php寫的網頁腳本,訪問量很大,就需要優化。在實際中shell一般是管理員用(因為我們的目的就是辦公自動化),所以要求邏輯要清晰,而這種方式并不是很適用。
例子1:測試x=${y-新值}
腳本
但是這個腳本有局限性,就是引入另外一個文件再執行這個腳本時不起作用,也就是說這個文件只針對于某一個特定情況。需要改進:
在tab上方有導引號``,如果在vim中輸入命令:形如’pwd’,導引號就能輸出命令的輸出。
這樣腳本就具有通用型了。
遠程執行
每次都連接服務器還是有點麻煩,我們可以在本地執行一個腳本,直接把服務器上的事辦了。
注:引號中的語句就會在服務器中執行。
確認執行:
默認是y。
但是如果有一天我們刪除了其中一個很有用的文件,比如jim.txt再執行腳本時:
這時會提示是否刪除刪除這個腳本,這種提示功能非常好。我們可以選擇no不刪除。
用其他語言寫腳本
Bash的語法偏機器思維。比較晦澀。
到此,相信大家對“Shell位置參數怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。