<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Linux(ARM)下修改shell提示符

          Linux(ARM)下修改shell提示符

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

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

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

          本文引用地址:http://www.ex-cimer.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命令行聲明即可,變量在關(guān)閉shell時失效。
          4):1. 在/etc/profile文件中添加變量【對所有用戶生效(永久的)】
          5):在用戶目錄下的.bash_profile文件中增加變量【對單一用戶生 效(永久的)】
          6):直接運行export命令定義變量【只對當前shell(BASH)有效(臨時 的)】
          7):使用readonly命令設(shè)置只讀變量,如果使用了readonly命令的話,變量就不可以被修改或清除了。
          8): 使用unset命 令來清除環(huán)境變量 $unsetTEMP_KEVIN #刪除環(huán)境變量TEMP_KEVIN


          關(guān)鍵詞: LinuxARMshell提示

          評論


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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();