shell

1.shell人機交互的接口。

查看系統shell: cat /etc/shells

 

2.shell的功能

history(歷史命令),命令補全,命令別名(alias),通配符(wildcard),程序作業控制,程序腳本

 

3.變量:

用一個固定的字符表示一串設置或是一組保留的數據,可以分爲全局變量和局部變量

變量的設置規則:

a,變量與變量內容以一個“=”號來連接

b,“=”兩邊不能直接接空格

c,變量名稱爲字母或數字,但不能以數字開頭

d,可使用“”號或‘’號將空格內容連接起來,``反引號爲變量中需要先執行的命令,\:轉義符將特殊字符變成一般字符(enter, 空格,$,!,/)

  “”號可以保持變量的原有特性

‘’單引號可以使特殊字符變成一般字符

 

4. 變量的顯示,讀取,聲明:

echo :顯示變量的內容ex:echo $var

read: 讀取變量內容 ex: read –t/-p var

declere :聲明變量爲數組,整數

 

5.變量內容的刪除,替代與替換:

${var#key}: 刪除匹配key最短的數據

${var##key}:刪除匹配key最長的數據

${var%key}:反向刪除匹配最短的數據

${var%%key}:反向刪除匹配key最長的數據

${var/old/new}:第一個old字符將被替換成new

${var//old/new}:替換所有old字符成new

 

6.bash環境與配置文件:

/etc/issue   /etc/motd
登陸過程會使用的配置文件:/etc/profile

pathmunge () {
    case ":${PATH}:" in
        *:"$1":*)
            ;;
        *)
            if [ "$2" = "after" ] ; then
                PATH=$PATH:$1
            else
                PATH=$1:$PATH
            fi
    esac
}

if [ -x /usr/bin/id ]; then
    if [ -z "$EUID" ]; then
        # ksh workaround
        EUID=`id -u`
        UID=`id -ru`
    fi
    USER="`id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
    pathmunge /sbin
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
else
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
    pathmunge /sbin after
fi

HOSTNAME=`/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

for i in /etc/profile.d/*.sh ; do
    if [ -r "$i" ]; then
        if [ "$PS1" ]; then
            . $i
        else
            . $i >/dev/null 2>&1
        fi
    fi
done

/etc/profile                               ~/.bash_profile:~/.bash_login:~/.profile

/etc/inputrc                             ~/.bashrc

/etc/profile.d/*.sh    <----->       /etc/bashrc

/etc/sysconfig/i18n

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