<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Linux之環(huán)境變量

          共 2602字,需瀏覽 6分鐘

           ·

          2023-06-30 16:34

          本文將介紹Linux中的環(huán)境變量

          9d77d010c02911272ced98485bd2e27a.webpabstract.jpeg 查看環(huán)境變量

          查看全局環(huán)境變量

          環(huán)境變量大體可以分為兩類:全局環(huán)境變量、局部環(huán)境變量。前者變量名通常使用大寫字母,后者變量名通常使用小寫字母。可通過下述env、printenv命令查看當(dāng)前所有的全局環(huán)境變量

                
                #?當(dāng)前所有的全局環(huán)境變量
          env

          #?當(dāng)前所有的全局環(huán)境變量
          printenv
          aba0ba696ac8b9ea7acb8fb3d9426426.webpfigure 1.jpeg3f09c98e8c635374da8478e524be0892.webpfigure 2.jpeg

          此外,利用printenv命令還可以查看指定的全局環(huán)境變量

                
                #?查看指定的全局環(huán)境變量
          printenv?<全局環(huán)境變量名>
          259894de3d504e867309717b04bede16.webpfigure 3.jpeg

          查看局部環(huán)境變量

          對于用戶自定義的局部環(huán)境變量而言,則可以通過echo命令來查看。注意變量名前面需要加 $ 美元符號

                
                #?查看指定的局部環(huán)境變量
          printenv?$<局部環(huán)境變量名>
          14e8e8985bbaebbc1d97050811d848f2.webpfigure 4.jpeg

          事實(shí)上,echo命令對于查看指定的全局環(huán)境變量也是有效的

                
                #?查看指定的全局環(huán)境變量
          printenv?$<全局環(huán)境變量名>
          7201337221b95c6cdc7d9848c209d355.webpfigure 5.jpeg 設(shè)置環(huán)境變量

          設(shè)置局部環(huán)境變量

          可通過如下方式設(shè)置局部環(huán)境變量。需注意賦值符兩邊不能有任何空格。如果用于賦值的字符串包含空格,則必須用單引號或雙引號進(jìn)行包裹

                
                #?設(shè)置局部環(huán)境變量
          <變量名>=<變量值>

          my_age=18

          my_name="Aaron?Zhu"
          e95c424734742aba57eb657ef89b1b41.webpfigure 6.jpeg

          對于局部環(huán)境變量而言,其僅對當(dāng)前Shell進(jìn)程而言是有效的。故父Shell中的局部環(huán)境變量對于子Shell來說是無效的

          d09edc03c239cb6ca5025a3830cc0a05.webpfigure 7.jpeg

          子Shell中的局部環(huán)境變量對于父Shell來說同樣也是無效的

          29dfb3a04e08c0380ccff7ca19271e5b.webpfigure 8.jpeg

          設(shè)置全局環(huán)境變量

          先創(chuàng)建局部環(huán)境變量,然后再將其導(dǎo)出到全局環(huán)境中。此時即為全局環(huán)境變量了

                
                #?設(shè)置局部環(huán)境變量
          <變量名>=<變量值>
          #?將局部環(huán)境變量?導(dǎo)出?到全局環(huán)境中
          export?<變量名>
          6c1115139bf08f5c0ab0974c6bdeeb8d.webpfigure 9.jpeg

          上述兩條命令可以合二為一

                
                #?設(shè)置局部環(huán)境變量,?并將該局部環(huán)境變量?導(dǎo)出?到全局環(huán)境中
          export?<變量名>=<變量值>
          8d4454b1456f687a5b0b9cfadbf095ad.webpfigure 10.jpeg

          父Shell中設(shè)置的全局環(huán)境變量,對于子Shell是可見的

          7e573f9d3e570ceabda36f6ba4698c61.webpfigure 11.jpeg

          子Shell中設(shè)置的全局環(huán)境變量,對于父Shell則是不可見的

          cc32a016786f676777381e8a7edb2d1e.webpfigure 12.jpeg

          對于父Shell中設(shè)置的全局環(huán)境變量而言,如果在父Shell中對其進(jìn)行修改,則會同步反映到子Shell當(dāng)中;但如果在子Shell中對其進(jìn)行修改,則不會同步反映到父Shell當(dāng)中

          becca9b75e56f8165c5d8955b2627b02.webpfigure 13.jpeg

          持久化

          事實(shí)上即使利用export命令創(chuàng)建了全局環(huán)境變量,其也僅對當(dāng)前Shell及其子Shell有效。一旦當(dāng)前Shell關(guān)閉,重新打開一個新的Shell后,我們還是需要再次重新定義,顯然非常麻煩。故我們通常會將設(shè)置全局環(huán)境變量的命令寫入到用戶目錄下的相關(guān)文件當(dāng)中。這樣全局環(huán)境變量就實(shí)現(xiàn)了對該用戶的永久生效。因?yàn)橐坏┰俅未蜷_Shell時,該相關(guān)文件會被調(diào)用,完成對全局環(huán)境變量的設(shè)置

          具體地,如果使用bash,則寫入到 .bashrc 文件中;如果使用zsh,則寫入到 .zshrc 文件中。這里我們以bash為例,一旦更新了用戶目錄下的.bashrc文件后,下次重新打開新Shell后就會發(fā)現(xiàn)全局環(huán)境變量生效了。如果期望在當(dāng)前Shell中立即生效,只需執(zhí)行source命令即可

                
                #?重新讀取.bashrc文件
          source?.bashrc
          8ba2576406d92d1179070b47f16afd06.webpfigure 14.jpeg 刪除環(huán)境變量

          無論是全局環(huán)境變量,還是局部環(huán)境變量。均可通過下述方法進(jìn)行刪除

                
                #?刪除環(huán)境變量
          unset?<變量名>
          a2c53efb9e9cb486060a8b1f0012809d.webpfigure 15.jpeg

          對于父Shell中設(shè)置的全局環(huán)境變量而言,如果在父Shell中將其刪除,則其所創(chuàng)建的子Shell中也會刪除該環(huán)境變量

          3b859dbd03e6190724f3d4d6a580fed6.webpfigure 16.jpeg

          對于父Shell中設(shè)置的全局環(huán)境變量而言,如果在其所創(chuàng)建的子Shell中將其刪除,則父Shell中并不會刪除該環(huán)境變量,依然有效可用

          6a504485586ac40b85fda3e0d84f8779.webpfigure 17.jpeg PATH環(huán)境變量

          在Linux中,我們最常接觸的環(huán)境變量就是PATH。它定義了用于查找命令、程序的目錄。如下所示,PATH中的目錄之間使用:冒號分隔

          a7354a0e8fe3419f810cd914ad27ac31.webpfigure 18.jpeg

          日常使用中最多的操作就是新增路徑到PATH環(huán)境變量當(dāng)中,可通過如下方式實(shí)現(xiàn)。無須從頭開始定義

                
                #?向PATH環(huán)境變量中新增路徑
          export?PATH=$PATH:<新路徑1>:<新路徑2>
          95dd1fded04d39f6a8cdf5bebe293283.webpfigure 19.jpeg 參考文獻(xiàn)
          1. Linux命令行與shell腳本編程大全·第4版 Richard Blum、Christine Bresnahan著
          瀏覽 60
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲色影院 | 天天色av | 天天激情发布在线 | 男女操逼免费视频 | 亲子伦一区二区三区 |