linux中的变量<?XML:NAMESPACE PREFIX = O />
变量的分类:本地变量:只对当前用户的shell有用声明方法:变量名(大写)= “xxxxx” 或 ’ xxxxx’环境变量:对当前用户写的shell和子shell都有效 声明方法:export 变量名(大写)= “xxxxx” 或 ’ xxxxx’查看环境变量:[root@www.linuxidc.com tmp]# exportDISPLAY:定义是哪个主机,第几个屏幕显示HISTSIZE:定义history中存取历史记录的条数HOME:当前用户的家目录PATH:执行外部命令(非当前shell自带的命令)就在PATH显示的路径中查找USER:当前用户名SHELL:当前使用的shell其他查看环境变量的方法:printevn和evn
变量的引用:eg:[root@www.linuxidc.com ~]#DIR=’/tmp/script’ 定义变量[root@www.linuxidc.com ~]#cd $DIR 通过$对变量进行引用 [root@www.linuxidc.com ~]#mkdir $DIR [root@www.linuxidc.com ~]#unset DIR 释放变量
查看变量内容:将字符输出到显示器使用echo命令[root@www.linuxidc.com ~]# echo 字符信息要查看变量中的字符,需要使用 $变量 [root@www.linuxidc.com ~]# echo $变量 即将变量内字符输出
特殊变量:$?$?中的值是上一条命令执行的结果(成功:0,失败1~255)[root@www.linuxidc.com ~]#cd[root@www.linuxidc.com ~]# echo $?0[root@www.linuxidc.com ~]# cdd-bash: cdd: command not found[root@www.linuxidc.com ~]# echo $?127
位置变量:$1,$2,$3…作用:将从输入内容导入脚本eg:脚本:#!/bin/bashecho $1echo $2echo $3执行脚本:[root@www.linuxidc.com ~]#脚本名 字符1 字符2 字符3 执行结果:字符1 字符2 字符3
算术运算:linux中默认所有变量都是字符,所以要执行算术运算需加[ ]或$(( ))。eg:脚本内容:#!/bin/bashecho $[$1+$2]执行脚本:[root@www.linuxidc.com ~]#/sum.h 4 59
alias别名的查看与创建:[root@www.linuxidc.com ~]#alias 直接输入alias显示当前环境中的别名[root@www.linuxidc.com ~]# alias cdnet="cd /etc/sysconfig/networking" 给命令创建别名 [root@www.linuxidc.com ~]# cdnet 输入别名后实现与输入命令相同的作用[root@www.linuxidc.com networking]# [root@www.linuxidc.com ~]#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." ”即可。
Linux帮助信息获取用户文件权限管理Linux基础知识:sed和awk入门以及vim常用操作相关资讯 Linux教程
- Linux教程:如何在命令行中查看目 (07/28/2014 12:22:23)
- Linux 修改root密码 (11/03/2012 07:53:38)
- su - root 与su root的区别 (06/06/2012 00:39:40)
| - Linux进程间通信:消息队列 (01/28/2013 09:43:00)
- U盘安装Linux开机无法启动解决方法 (10/07/2012 08:55:52)
- Windows 7/Linux 同步时间 (05/15/2012 06:17:55)
|
本文评论 查看全部评论 (0)