Linux “$” 的所有相關用法

Linux “$” 的所有相關用法


一、默認命令提示符權限標誌位

    非root用戶,例如:[user1@localhost myTestDir]$

    如果是root用戶登錄,則爲#,例如:[root@localhost ~]#


    注([ ] 中的部分):@前的user1、root爲登錄用戶名,@後的localhost爲主機名,最後的myTestDir、~等爲當前所在目錄的文件名

    具體可以查看系統內置的環境變量PS1(echo $PS1),系統默認情況下結果爲[\u@\h \W]\$

  1. \u     表示當前用戶名
  2. \H     表示完整的主機名(\h 表示短主機名,默認)
  3. \w     表示完整路徑(\W 表示短路徑,默認)
  4. \$     表示提示符(普通用戶顯示爲字符$, root 用戶顯示爲字符#)
  5. 除此之外,其餘的 [ 、@ 、] 和空格字符按原樣顯示


二、使用已聲明變量

    例如:a=1

                echo $a

    注:要想將一個變量聲明爲指定類型,其語法爲:declare(或typeset)  [-aixr]  變量名

    參數:

  1. -a  :聲明爲數組類型
  2. -i  :聲明爲整型
  3. -x  :聲明爲環境變量(功能與 export 相同)
  4. -r  :聲明爲只讀類型,此變量聲明後不能更改內容,也不能撤銷


三、Shell腳本

  1. $$   當前shell腳本運行時的pid(進程號)
  2. $*    所有向腳本傳遞的參數(字符串形式顯示)
  3. $@  所有向腳本傳遞的參數列表(List形式)
  4. $n    向腳本傳遞的第n個參數
  5. $#    向腳本傳遞的參數個數
  6. $?    最後一條命令的退出狀態,0表示沒有錯誤,其他表示有錯誤

        示例腳本(testfun.sh):

#!/bin/bash
funecho()
{
        echo "This is funecho()"
        echo "pid=$$"
        echo "parastring=$*"
        echo "paralist=$@"
        echo "para0=$0"
        echo "para1=$1"
        echo "para2=$2"
        echo "para3=$3"
        echo "para4=$4"
        echo "para5=$5"
        echo "before_ret:para_num=$#"
        echo "before_ret:return_value=$?"
        return "$#"
}
echo "before_fun:para_num=$#"
echo "before_fun:return_value=$?"
echo "fun begin--------"
funecho p1 p2 p3 p4
echo "after_ret:para_num=$#"
echo "after_ret:return_value=$?"
echo "fun end--------"
echo "after_fun:para_num=$#"
echo "after_fun:return_value=$?"

        運行:./testfun.sh

before_fun:para_num=0
before_fun:return_value=0
fun begin--------
This is funecho()
pid=1760
parastring=p1 p2 p3 p4
paralist=p1 p2 p3 p4
para0=./testfun.sh
para1=p1
para2=p2
para3=p3
para4=p4
para5=
before_ret:para_num=4
before_ret:return_value=0
after_ret:para_num=0
after_ret:return_value=0
fun end--------
after_fun:para_num=0
after_fun:return_value=0


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章