shell變量操作技巧

本文由網路資料整理而成。
1 shell變量基礎
shell變量是一種很“弱”的變量,默認情況下,一個變量保存一個串,shell不關心這個串是什麽含義。所以若要進行數學運算,必須使用一些命令例如let、declare、expr、雙括號等。shell變量可分爲兩類:局部變量和環境變量。局部變量只在創建它們的shell中可用。而環境變量則可以在創建它們的shell及其派生出來的任意子進程中使用。有些變量是用戶創建的,其他的則是專用shell變量。變量名必須以字母或下劃線字符開頭。其余的字符可以是字母、數字(0~9)或下劃線字符。任何其他的字符都標志著變量名的終止。名字是大小寫敏感的。給變量賦值時,等號周圍不能有任何空白符。爲了給變量賦空值,可以在等號後跟一個換行符。用set命令可以查看所有的變量,unset var命令可以清除變量var,var相當于沒有定義過。readonly var可以把var變爲唯讀變量,定義之後不能對var進行任何更改。對shell變量的引用方式很多,用這些方式可以方便的獲取shell變量的值,變量值的長度,變量的一個字串,變量被部分替換後的值等等。shell變量常見引用方式如下:
shell變量操作技巧

shell變量操作技巧

shell變量操作技巧

2 環境變量
環境變量的定義方法如下:
var=value
export var
或者 export var=value
shell在初始化的時候會在執行profile等初始化腳本,腳本中定義了一些環境變量,這些變量會在創建子進程時傳遞給子進程。
更多相關文章
  • TCSHshell可以使用戶使用shell配置變量和特征配置自己的shell.也可以使用set命令設置特征.TCSH也有注冊,注消以及何時進入TCSHshell的配置文件.一.TCSH shell 特征TCSH有幾個特征,允許控制不同的shell操作的方法.TCSH shell特征不僅包括許多它自己 ...
  • 03 Linux shell 變量 數學 運算
    Abstract :  1)  Linux shell 中使用 let , [ ] ,(( )) 三種運算符操作 shell 變量進行簡單的基本運算:2)Linux shell 中使用 expr 與 bc 兩個程序實現高級運算:1, Linux shell 變量的基本運算數值作爲常規變量直接賦值給變 ...
  • 1. 用戶定義的變量      用戶定義的變量是最普通的Shell變量.變量名是以字母或下線符打頭的字母.數字和下線符序列,並且大小寫字母意義不同.如dir與Dir是不同的變量.與C語言中標識符的定義相同.變量名的長度不受限制.      定義變量並賦值的一般形式是:變量名=字符串      注意, ...
  •  特殊的shell變量:$0  獲取當前執行的shell腳本的文件名$n  獲取當前執行的shell腳本的第n個參數值,n=1..9$*  獲取當前shell的所有參數 "$1 $2 $3 -注意與$#的區別$#  獲取當前shell命令行中參數的總個數$$  獲取當前shell的進程號( ...
  • 13.10  變量 13.10.1  變量類型 變量可分爲兩類:局部變量和環境變量.局部變量只在創建它們的shell中可用.而環境變量則可以在創建它們的shell及其派生出來的任意子進程中使用.有些變量是用戶創建的,其他的則是專用shell變量. 13.10.2  命名慣例 變量名必須以字母或下劃線 ...
  • 一.什麽是變量   在shell中有一個重要的概念,就是變量,顧名思義,變量就是變動的值,就是以特定的字符串來表示一個不定的內容.   比如說我們用PWD命令查看當前目錄,我們可能一致在切換文件夾,但是PWD卻能正確顯示我們所在的目錄.   再比如我們以不同身份登錄系統的時候,系統怎麽知道我是哪個用 ...
  • linux中shell變量$#,$@,$0,$1,$2的含義解釋: 變量說明: $$ Shell本身的PID(ProcessID) $! Shell最後運行的後台Process的PID $? 最後運行的命令的結束代碼(返回值) $- 使用Set命令設定的Flag一覽 $* 所有參數列表.如" ...
  • Linux shell - 環境和shell變量磁針石聯系方式:gmail and gtalk: xurongzhong#gmail.com 文件路徑:    D:\blog\@Linux\shell 參考資料*<LINUX與UNIX SHELL編程指南>之 "第14章環境和s ...
  • linux基本操作之shell變量變量設置時的不同模式Variable-name = value       設置實際值到 variable-nameVariable-name+value         如果設置了 variable-name,則重設其值Variable-name:?value   ...
一周排行
  • 微軟技術曆程
    在過去30年中微軟已經開發出了足以影響一切工作場所和居住場所的技術. 最有名的就是wind ...
  • 圖文詳解ReSharper 8.1功能變化
    ReSharper 8.1版本已經發布有段時間了,被廣大開發者購買和試用,今天小編就ReS ...
  • CodeIgniter中載入css文件1.用原始的html中的link標簽 2.用CodeIgniter內建的link_tag函數STEP1---載入ci的html helper    a.在對應的控制器中添加代碼: ...
  • 在這一節中,我們回到Android端,討論一下當應用第一次運行時,通常采用的一頁一頁滑動的介紹頁面的實現方式.首先,我們需要知道應用是否是第一次運行.判斷應用是否是第一次運行,通常是應用持久化保存一個特定的信息,每次 ...
  • Date:6      Environment:Eclipse 4.2,Tomcat 7          問題描述:useBean行爲定義了Java Bean對象(Person類包括姓名[stri ...
  • 系統架構師經驗總結:1.設置伺服器複雜密碼,符合密碼健壯性要求2.盡量少關機,最好使用重啓代替關機指令.不要用shutdown –h now,而要用reboot.3.設置目錄權限小心謹慎,-R參數需要看路徑後是否有空 ...
  • 利用hosts與ping工具免翻牆訪問Dropbox
    ropbox是一個十分不錯的雲存儲同步網盤,我的網站備份就放在上面可是從2014年6月18 ...
  • 今天給大家分享一款優秀的 jquery 彈出層展示插件 fancybox.它除了能夠展示圖片之外,還可以展示 flash.iframe 內容.html 文本以及 ajax 調用,我們可以通過 css 來自定義外觀.f ...
  •   在oracle裏,我們可以通過應用歸檔日志恢複數據庫自備份依賴的某個時間點,在mysql裏面,基于myisam引擎的數據庫(該數據庫下的所有表都是myisam引擎),我們可以回放binlog日志(注意數據庫必須開 ...
  • from os import popen print popen('hostname').read() import socket print socket.gethostname() 這兩種方法都可以獲得計算機名稱