新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Linux(ARM)下修改shell提示符

        Linux(ARM)下修改shell提示符

        作者: 時間:2016-11-11 來源:網絡 收藏
        1): 創建全局變量文件:/etc/profile
        添加如下內容:
        PS1=Andy--#
        export PS1
        注意:/etc/profile定義的變量是全局的,即對所有登錄的Linux用戶都有效。而在普通腳本里eport只在當前腳本以及子進程里有 效。

        2): 使/etc/profile 生效
        source /etc/profile 可以立即生效。
        而要想讓系統啟動自動生效,需要啟動一個登錄shell,當然也有另一個方法:

        busybox里的ash作為shell時,如果直接在串口通過/bin/sh或者/bin/ash打開終端,而不登陸的話。常常遇到 放在/etc/profile不能生效的問題。但如果登陸就可以。其實這個問題解決起來很簡單,只需要在啟動的命令前加上一個“-”,變成“-/bin /sh”或“-/bin/ash”就行了。具體原因,是因為ash在執行的時候,首先會判斷是否是登陸shell,如果是才會讀取profile文件。具 體說來就是通過登陸、或者是執行的腳本前面有個“-”的。具體參考ash的源代碼:

        本文引用地址:http://www.104case.com/article/201611/316868.htm
        if (/* argv[0] && */ argv[0][0] == -)isloginsh = 1;if (isloginsh) {state = 1;read_profile("/etc/profile");state1:state = 2;read_profile(".profile");}
        即修改 /etc/inittab文件
        ttyS2::askfirst:-/bin/sh
        注意:ttyS2是你ARM板實際使用的串口

        3): Linux的變量種類
        (1): 永久的:需要修改配置文件,變量永久生效。
        (2): 臨時的:使用export命令行聲明即可,變量在關閉shell時失效。
        4):1. 在/etc/profile文件中添加變量【對所有用戶生效(永久的)】
        5):在用戶目錄下的.bash_profile文件中增加變量【對單一用戶生 效(永久的)】
        6):直接運行export命令定義變量【只對當前shell(BASH)有效(臨時 的)】
        7):使用readonly命令設置只讀變量,如果使用了readonly命令的話,變量就不可以被修改或清除了。
        8): 使用unset命 令來清除環境變量 $unsetTEMP_KEVIN #刪除環境變量TEMP_KEVIN


        關鍵詞: LinuxARMshell提示

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 靖西县| 瑞昌市| 南江县| 青海省| 公主岭市| 温宿县| 虹口区| 浦北县| 永和县| 罗源县| 常德市| 水城县| 师宗县| 中宁县| 绥中县| 和顺县| 当雄县| 新丰县| 岳阳县| 滨海县| 廊坊市| 海口市| 田东县| 淳安县| 禄丰县| 兰西县| 荔浦县| 南投市| 虞城县| 历史| 中山市| 互助| 岳西县| 保亭| 宿州市| 洪湖市| 石林| 额尔古纳市| 龙井市| 柘城县| 砀山县|