新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一篇對(duì)大家學(xué)習(xí),理解linux很有用的文章

        一篇對(duì)大家學(xué)習(xí),理解linux很有用的文章

        作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò) 收藏

        $ set –o noglob

        $ ls answer?

        answer?

        子shell與export命令

        用戶登錄到Linux系統(tǒng)后,系統(tǒng)將啟動(dòng)一個(gè)用戶shell。在這個(gè)shell中,可以使用shell命令或聲明變量,也可以創(chuàng)建并運(yùn)行shell腳本程序。運(yùn)行shell腳本程序時(shí),系統(tǒng)將創(chuàng)建一個(gè)子shell。此時(shí),系統(tǒng)中將有兩個(gè)shell,一個(gè)是登錄時(shí)系統(tǒng)啟動(dòng)的shell,另一個(gè)是系統(tǒng)為運(yùn)行腳本程序創(chuàng)建的shell。當(dāng)一個(gè)腳本程序運(yùn)行完畢,它的腳本shell將終止,可以返回到執(zhí)行該腳本之前的shell。從這種意義上來(lái)說(shuō),用戶可以有許多shell,每個(gè)shell都是由某個(gè)shell(稱為父shell)派生的。

        在子shell中定義的變量只在該子shell內(nèi)有效。如果在一個(gè)shell腳本程序中定義了一個(gè)變量,當(dāng)該腳本程序運(yùn)行時(shí),這個(gè)定義的變量只是該腳本程序內(nèi)的一個(gè)局部變量,其他的shell不能引用它,要使某個(gè)變量的值可以在其他shell中被改變,可以使用export命令對(duì)已定義的變量進(jìn)行輸出。export命令將使系統(tǒng)在創(chuàng)建每一個(gè)新的shell時(shí)定義這個(gè)變量的一個(gè)拷貝。這個(gè)過(guò)程稱之為變量輸出。

        [例]在本例中,變量myfile是在dispfile腳本程序中定義的。然后用export命令將變量myfile輸出至任何子shell,例如當(dāng)執(zhí)行printfile腳本程序時(shí)產(chǎn)生的子shell。

        dispfile腳本程序清單:

        /**************begin dispfile**************/

        myfile=”List”

        export myfile

        echo “Displaying $myfile”

        pr –t –n $myfile

        printfile

        /**************end dispfile***************/

        printfile腳本程序清單:

        /**************begin printfile**************/

        echo “Printing $myfile”

        lpr $myfile

        /**************end printfile**************/

        $dispfile

        Displaying List

        1 screen

        2 modem

        3 paper

        Printing List

        $

        定制Bash

        在本節(jié)中已經(jīng)介紹了很多定制Bash的方法,但是迄今為止,這些方法都只是對(duì)當(dāng)前Bash對(duì)話有用。只要用戶退出登錄,所做的一切改變都會(huì)丟失。所以應(yīng)該在Bash的初始化文件中做永久性的修改。

        用戶可以將每次啟動(dòng)Bash所需要執(zhí)行的命令放入初始化文件中,最常見的命令就是alias命令和變量定義兩種。系統(tǒng)中的每個(gè)用戶在其主目錄中都有一個(gè).bash_profile文件,Bash每次啟動(dòng)時(shí)都將讀取該文件,其中包含的所有命令都將被執(zhí)行。

        下面便是默認(rèn).bash_profile文件的代碼:

        #.bash_profile

        #Get the aliases and functions

        if [-f ~/.bashrc ];then

        .~/.bashrc

        fi

        #User specific environment and startup programs

        PATH=$PATH:$HOME/bin

        ENV=$HOME/.bashrc

        USERNAME=””

        Export USERNAME ENV PATH


        上一頁(yè) 1 2 3 4 5 6 7 下一頁(yè)

        關(guān)鍵詞: 學(xué)習(xí) linux

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 康乐县| 水富县| 出国| 萍乡市| 巴塘县| 虎林市| 融水| 河北省| 宜春市| 满洲里市| 桐柏县| 苍梧县| 汨罗市| 万州区| 咸阳市| 临泽县| 东乡| 玉林市| 始兴县| 饶河县| 来安县| 高碑店市| 湘西| 邓州市| 壶关县| 西林县| 左云县| 渝北区| 衡水市| 滕州市| 墨脱县| 十堰市| 且末县| 商水县| 库车县| 吴旗县| 灵石县| 平定县| 绍兴县| 临邑县| 思南县|