實驗目的:
進一步鞏固shell程序設計語言基本語法,加深對所學知識理解。
實驗要求
1. 四種變量的使用
2. 配置環境變量
3. 元字符和正則表達式
4. 引號
1. 本地變量
$ var1="hello Linux" //定義本地變量var1
$ read var2????????? //定義本地變量vae2
$ echo $var1? $var2? //顯示本地變量的值
2. 環境變量
$ env //顯示系統的環境變量
$ echo $PATH? //顯示搜索路徑變量PATH
$ MYNAME="zhangs"? //定義本地變量MYNAME
$ export MYNAME //將本地變量MYNAME輸出為環境變量
下面觀察環境變量與本地變量作用范圍的區別
$ echo? $var1?? $MYNAME? //顯示本地變量和環境變量
$ bash //創建子進程bash
$ echo $var1? $MYNAME //顯示本地變量和環境變量
$ exit //退出子進程bash
$ echo $var1? $MYNAME
通過修改環境變量PS1可修改提示符
$ PS1=$?? //將提示符變為$
3. 位置變量
使用編輯器vi編輯下列shell腳本
#!/bin/bash
echo $0 $1 $2 $3
將上述兩行腳本保存為文件locat.sh
$ chmod +x locat.sh //增加執行權限
$ ./locat.sh? you me he
觀察顯示結果,理解位置變量的定義
4. 預定義變量
用編輯器vi編輯以下shell腳本
#!/bin/bash
echo? $#
echo? $*
將上述三行保存為文件predef.sh
$chmod +x predef.sh //增加執行權限
$ ./predef.sh Linux Unix Windows
觀察運行結果,理解預定義變量的含義
5. 配置環境變量
可通過用戶主目錄下的配置文件,改變系統的啟動參數,例如:可通過修改.bash_profile修改環境變量PATH,具體操作如下:
$ cd ~? //進入用戶的主目錄
$ vi .bash_profile //編輯配置文件
若文件中有下列行:
PATH= $PATH;$HOME/bin
則在PATH路徑中增加當前路徑,修改后外:
PATH= $PATH;$HOME/bin:.
$ exit //退出
用該用戶的賬號重新登錄系統
執行當前目錄下的locat.sh腳本無需制定當前路徑,例如:
$ locat.sh? myname is zhangs
///-------------------------------------------------------------------
logout退出當前用戶,烏班圖在當前用戶的主目錄下修改環境變量
似乎沒有bash_profile文件。
///-------------------------------------------------------------------
6.元字符與正則表達式
$ cd ~? //進入用戶主目錄
# ls -l? / >list? //以詳細方式列出根目錄下的所有文件信息,重定向至list文件
$ grep ^d? list???? // 查詢所有目錄
$ ls *.sh? //列出所有后綴名為.sh的shell腳本文件
6. 反引號、單引號和雙引號
$ abc="pwd"
$ echo '$abc'? //只顯示單引號內的字符串
$ echo "$abc"? //顯示變量的值
$ echo `"$abc"`? //"和`的綜合使用
$ echo "`pwd`"? //為"內的`作出解釋
$ echo *
$ echo "*"??? //屏蔽元字符的特定含義
注:雙引號的命令替換是:將雙引號內一對反引號中的命令替換為該命令運行的結果。