歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux的變量I/O重定向管道全局搜索正則表達式

Linux的變量I/O重定向管道全局搜索正則表達式

日期:2017/2/28 16:09:35   编辑:Linux教程

linux中的變量

變量的分類:

本地變量:只對當前用戶的shell有用

聲明方法:變量名(大寫)= “xxxxx” 或 ’ xxxxx’

環境變量:對當前用戶寫的shell和子shell都有效

聲明方法:export 變量名(大寫)= “xxxxx” 或 ’ xxxxx’

查看環境變量:

[[email protected] tmp]# export

DISPLAY:定義是哪個主機,第幾個屏幕顯示

HISTSIZE:定義history中存取歷史記錄的條數

HOME:當前用戶的家目錄

PATH:執行外部命令(非當前shell自帶的命令)就在PATH顯示的路徑中查找

USER:當前用戶名

SHELL:當前使用的shell

其他查看環境變量的方法:printevn和evn

變量的引用:

eg:

[[email protected] ~]#DIR=’/tmp/script’ 定義變量

[[email protected] ~]#cd $DIR 通過$對變量進行引用

[[email protected] ~]#mkdir $DIR

[[email protected] ~]#unset DIR 釋放變量

查看變量內容:

將字符輸出到顯示器使用echo命令

[[email protected] ~]# echo 字符信息

要查看變量中的字符,需要使用 $變量

[[email protected] ~]# echo $變量 即將變量內字符輸出

特殊變量:$?

$?中的值是上一條命令執行的結果(成功:0,失敗1~255)

[[email protected] ~]#cd

[[email protected] ~]# echo $?

0

[[email protected] ~]# cdd

-bash: cdd: command not found

[[email protected] ~]# echo $?

127

位置變量:$1,$2,$3…

作用:將從輸入內容導入腳本

eg:

腳本:

#!/bin/bash

echo $1

echo $2

echo $3

執行腳本:

[[email protected] ~]#腳本名 字符1 字符2 字符3

執行結果:

字符1 字符2 字符3

算術運算:

linux中默認所有變量都是字符,所以要執行算術運算需加[ ]或$(( ))。

eg:

腳本內容:

#!/bin/bash

echo $[$1+$2]

執行腳本:

[[email protected] ~]#/sum.h 4 5

9

alias別名的查看與創建:

[[email protected] ~]#alias 直接輸入alias顯示當前環境中的別名

[[email protected] ~]# alias cdnet="cd /etc/sysconfig/networking" 給命令創建別名

[[email protected] ~]# cdnet 輸入別名後實現與輸入命令相同的作用

[[email protected] networking]#

[[email protected] ~]#unset cdnet 撤銷別名

無論是直接定義的本地變量還是用export聲明的環境變量,在重新登錄或reboot之後都會消失。若想對其進行長久保存,需要在相關的配置文件中進行修改。

相關的配置文檔目錄:

全局相關:

/etc/profile

/etc/profile.d/*

/etc/bashrc

局部相關(即每個用戶有可以設定自己的一套配置)

~/.bash_profile

~/.bashrc

profile類文件:設置環境變量;

設置某些登陸時就要運行的命令。

bashrc類文件:設置別名;

設置本地變量,和只對當前shell有效的命令。

shell按照過程和應用次序可以分為:非交互式登陸式的shell和交互式登陸式的shell

非交互式登陸式的shell,啟動系統時自動執行。

啟動順序為:~/.bashrc→/etc/bashrc→/etc/profile.d/*

交互式登陸式的shell,修要登錄用戶進入系統輸入命令。

啟動順序為:/etc/profile→/etc/profile.d/*→~/.bash_profile→/etc/bashrc

eg:

通過修改配置文件實現用戶登錄進系統時候,屏幕顯示字符串“Hello,you are root(當前用戶的用戶名)。”

由於是對於每個用戶alluser都有相同的配置,所以應該是全局變量/etc/profile,通過編輯器在文本的最後一行加入“ echo "hello,you are $USER." ”即可。

Copyright © Linux教程網 All Rights Reserved