當前位置:首頁 » 操作系統 » linux中的變數

linux中的變數

發布時間: 2022-06-01 23:10:06

linux下各種變數的理解

在技術上,變數可分成兩類:環境變數與shell變數。

1。環境變數可視為全局變數,與具體shell無關,是系統中固定存在的變數(值不一定都一樣)。env命令可查看所有的環境變數,export命令可修改已經存在的環境變數,也可以將一個shell變數導出為環境變數,但是export的效力僅限於此次該登陸操作,也就是說下次登錄就失效了。
另外,環境變數和內部變數應該是一回事。

2。shell變數可視為局部變數,只對當前shell有效,子進程不會繼承它們。

用戶變數,我的理解是用戶自定義的變數,當然屬於shell變數。舉例,命令行輸入:
$ a=123
$ echo $a
123
第一行產生一個用戶變數a,並賦值為123,第二行顯示變數a的值,第三行是執行結果。

本地變數,我的理解就是當前shell的所有變數,包括環境變數和shell變數(包括shell本身提供的變數和用戶變數)。set命令可查看所有的本地變數。

參數變數應該就是位置變數,這個很容易理解,給個例子就明白了。新建一腳本test,內容如下:
#!/bin/bash
echo "$1"
然後執行此腳本(之前要修改test的許可權為可執行):
$ ./test helloworld
helloworld
第一行的helloworld給出了腳本中$1的值,第二行的helloworld是執行結果。

在向腳本傳遞參數時,可以用此位置變數來獲取參數。
他們分別是:
$0:腳本名字。此變數包含地址,可以使用basename $0獲得腳本名稱。
$1:第一個參數。
$2,$3,$4,$5,...依次類推。

② linux 怎麼 賦值變數

如圖,後面的為$2 $3...以此類推

③ linux中位置變數的作用是什麼

位置變數:用於處理命令行傳遞給shell腳本的參數,比如test.sh腳本,用命令「sh
test.sh
1
2
3」執行該腳本,則位置變數$1指代1,$2指代2,$3指代4,$0指代腳本名稱test.sh。

④ Linux中的變數

據我所知不是環境變數,至少在Gentoo和Fedora下面的默認環境變數裡面沒有.
當然也可能是樓主使用的發行版下面特有的默認環境變數.
不過無論是否是默認的,在linux中,變數是一樣的.
shell中的變數可以自己定義的,只要在/etc/profile或者當前用戶的bash配置文件
裡面定義,然後export該變數,那麼這個變數就變成全局的環境變數了.

⑤ linux下的變數到底是什麼啊

變數是為了更快、更准確的應用shell訪問或執行
變數
變數名稱規則 只能使用字母,數字,與下劃線.以字母或下劃線開頭
系統變數
set 和 env區別
set:顯示所有變數
env:環境變數
變數賦值
VARNAME=VALUE
echo $VARNAME
刪除變數 unset VARNAME

常用變數
PATH
PWD
LANG
HOME
HISTSIZE
PS1
全局變數與私有變數
# my_name=seker
# export your_name=zorro
# echo $my_name
seker
# echo $your_name
zorro
# bash
# echo $my_name

# echo $your_name
zorro
# export her_name=angel
# exit
exit
# echo $her_name

#
全局變數可以被子進程繼承,子進程的全局變數隨著子進程結束而消失

⑥ LINUX變數的定義

臨時存放數據用的
1.本地變數
本地變數就如同局部變數一樣,只在本SHELL中起作用。它不會影響到其他SHELL中的變數
2.環境變數
環境變數用於所有的用戶進程。在Linux中,登陸進程稱為父進程,shell中執行的用戶程序均稱為子進程。
3.位置參數變數在向腳本傳遞參數時,可以使用此位置變數來獲取參數。
4.特定變數參數
一些腳本運行的相關控制信息

⑦ linux 變數

據我所知不是環境變數,至少在Gentoo和Fedora下面的默認環境變數裡面沒有.
當然也可能是樓主使用的發行版下面特有的默認環境變數.
不過無論是否是默認的,在linux中,變數是一樣的.
shell中的變數可以自己定義的,只要在/etc/profile或者當前用戶的bash配置文件
裡面定義,然後export該變數,那麼這個變數就變成全局的環境變數了.
是否可以解決您的問題?

⑧ linux環境變數怎麼配置

linux環境變數配置相關命令及常式:

1. 顯示環境變數HOME
$ echo $HOME
/home/redbooks
2. 設置一個新的環境變數hello
$ export HELLO="Hello!"
$ echo $HELLO
Hello!
3. 使用env命令顯示所有的環境變數
$ env
HOSTNAME=redbooks.safe.org
PVM_RSH=/usr/bin/rsh
Shell=/bin/bash
TERM=xterm
HISTSIZE=1000
...
4. 使用set命令顯示所有本地定義的Shell變數
$ set
BASH=/bin/bash
BASH_VERSINFO=([0]="2"[1]="05b"[2]="0"[3]="1"[4]="release"[5]="i386-redhat-linux-gnu")
BASH_VERSION='2.05b.0(1)-release'
COLORS=/etc/DIR_COLORS.xterm
COLUMNS=80
DIRSTACK=()
DISPLAY=:0.0
...
5. 使用unset命令來清除環境變數
set可以設置某個環境變數的值。清除環境變數的值用unset命令。如果未指定值,則該變數值將被設為NULL。示例如下:
$ export TEST="Test..." #增加一個環境變數TEST
$ env|grep TEST #此命令有輸入,證明環境變數TEST已經存在了
TEST=Test...
$ unset $TEST #刪除環境變數TEST
$ env|grep TEST #此命令沒有輸出,證明環境變數TEST已經存在了
6. 使用readonly命令設置只讀變數
如果使用了readonly命令的話,變數就不可以被修改或清除了。示例如下:
$ export TEST="Test..." #增加一個環境變數TEST
$ readonly TEST #將環境變數TEST設為只讀
$ unset TEST #會發現此變數不能被刪除
-bash: unset: TEST: cannot unset: readonly variable
$ TEST="New" #會發現此也變數不能被修改
-bash: TEST: readonly variable
環境變數的設置位於/etc/profile文件
如果需要增加新的環境變數可以添加下屬行
export path=$path:/path1:/path2:/pahtN

1.Linux的變數種類
按變數的生存周期來劃分,Linux變數可分為兩類:
永久的:需要修改配置文件,變數永久生效。
臨時的:使用export命令聲明即可,變數在關閉shell時失效。
2.設置變數的三種方法
在/etc/profile文件中添加變數【對所有用戶生效(永久的)】
用VI在文件/etc/profile文件中增加變數,該變數將會對Linux下所有用戶有效,並且是「永久的」。
例如:編輯/etc/profile文件,添加CLASSPATH變數
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
註:修改文件後要想馬上生效還要運行# source /etc/profile不然只能在下次重進此用戶時生效。
在用戶目錄下的.bash_profile文件中增加變數【對單一用戶生效(永久的)】
用VI在用戶目錄下的.bash_profile文件中增加變數,改變數僅會對當前用戶有效,並且是「永久的」。
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
$ vi /home/guok/.bash.profile
添加如下內容:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
註:修改文件後要想馬上生效還要運行$ source /home/guok/.bash_profile不然只能在下次重進此用戶時生效。
直接運行export命令定義變數【只對當前shell(BASH)有效(臨時的)】
在shell的命令行下直接使用[export 變數名=變數值] 定義變數,該變數只在當前的shell(BASH)或其子shell(BASH)下是有效的,shell關閉了,變數也就失效了,再打開新shell時就沒有這個變數,需要使用的話還需要重新定義。
環境變數的查看
使用echo命令查看單個環境變數。例如:
echo $PATH
使用env查看所有環境變數。例如:
env
使用set查看所有本地定義的環境變數。
unset可以刪除指定的環境變數。
常用的環境變數
PATH 決定了shell將到哪些目錄中尋找命令或程序
HOME 當前用戶主目錄
HISTSIZE歷史記錄數
LOGNAME 當前用戶的登錄名
HOSTNAME指主機的名稱
SHELL 當前用戶Shell類型
LANGUGE 語言相關的環境變數,多語言可以修改此環境變數
MAIL當前用戶的郵件存放目錄
PS1基本提示符,對於root用戶是#,對於普通用戶是$

⑨ linux下變數是什麼啊誰能給一個定義。

變數就是一個會變得量。。。
通俗點說就是,不同時間一個設置的值是可以更改的

比如
DIR=/ROOT
DIR=/TMP
DIR就是一個變數
他可以更改他的值

⑩ LINUX變數的定義

相當於你寫個autorun腳本,自操作。 變數的作用? 這個是由你定義的相關的操作來決定的,單純的說變數本身他是沒有任何作用的。 就好比你給你一個物品起名字叫做木頭,單對這個名字來說,只是兩個字,沒有任何作用。但是他可以做成傢具等,這就是你的相關操作流程決定的。

熱點內容
如何製作原始傳奇腳本 發布:2025-01-10 23:00:30 瀏覽:117
小程序免費模板源碼下載 發布:2025-01-10 22:55:23 瀏覽:233
gradle編譯jar 發布:2025-01-10 22:54:36 瀏覽:796
伺服器搭建棋牌游戲 發布:2025-01-10 22:53:49 瀏覽:642
java記事本程序 發布:2025-01-10 22:38:27 瀏覽:666
如何通過網吧電腦進入網吧伺服器 發布:2025-01-10 22:22:30 瀏覽:706
資料庫緩存是什麼 發布:2025-01-10 22:21:05 瀏覽:386
dns配置出現錯誤該怎麼辦 發布:2025-01-10 22:13:00 瀏覽:439
雲頂演算法 發布:2025-01-10 22:10:07 瀏覽:991
收件伺服器有什麼作用 發布:2025-01-10 21:50:01 瀏覽:391