使用如下shell安裝node時,一直提示 command not found
wget
tar zxvf node-v8.16.0.tar.gz -c /usr/local
cd /usr/local/
mv node* node
cat export node_home=/usr/local/node
export path=$node_home/bin:$path
eofsource /etc/profile
去檢查 node.sh 才發現變數被解析了。
#cat /etc/profile.d/node.sh
export node_home=/usr/local/node
export path=/usr/local/node/bin:/usr/local/node/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/redis/bin/:/root/bin
兩個解決辦法:
加轉義字元,適用於變數少的情況
[root@elk ~]# cat > export node_home=/usr/local/node
> export path=\$node_home/bin:\$path
> eof
[root@elk ~]# cat /etc/profile.d/node.sh
export node_home=/usr/local/node
export path=$node_home/bin:$path
2. eof 加反斜槓,或用單引號、雙引號包圍 。適用變數多的情況
[root@elk ~]# cat <<'eof'> /etc/profile.d/node.sh
> export node_home=/usr/local/node
> export path=$node_home/bin:$path
> eof
[root@elk ~]# cat /etc/profile.d/node.sh
export node_home=/usr/local/node
export path=$node_home/bin:$path
自動變數與非自動變數
自動變數 區域性變數,如不作專門說明為靜態變數,都是動態分配儲存空間,儲存在動態儲存區中。這種變數叫自動變數。這種變數只在定義它們的時候才建立,在定義它們的函式返回時系統 變數所佔儲存空間。對這些變數儲存空間的分配和 是由系統自動完成的,所以也叫自動變數。一般情況下,不作專門說明的區域性變數,均是自...
自動變數與非自動變數
自動變數 區域性變數 如不作專門說明為 靜態變數 都是動態分配儲存空間,儲存在動態儲存區中。這種變數叫自動變數。這種變數只在定義它們的時候才建立,在定義它們的 函式 返回時系統 變數所佔儲存空間。對這些變數儲存空間的分配和 是由系統自動完成的,所以也叫自動變數。一般情況下,不作專門說明的區域性變數,...
自動變數與非自動變數
自動變數與非自動變數 2012 05 28 10 27 52 自動變數 區域性變數,如不作專門說明為靜態變數,都是動態分配儲存空間,儲存在動態儲存區中。這種變數叫自動變數。這種變數只在定義它們的時候才建立,在定義它們的函式返回時系統 變數所佔儲存空間。對這些變數儲存空間的分配和 是由系統自動完成的,...