Shell学习笔记1-2

it2026-02-21  11

第二章 变量和运算符

本地变量   应用于本地变量

localtest=“test”  echo ${localtest}

  set 查看本地变量 

readyonly localtest      localtest="newvalue"      bash:localtest: readyonle varible 

环境变量  所有用户进程,用于子进程,包括编辑器、脚本和应用

  $HOME/.bash_profile (/etc/profile)

export globalvalue="global"

readyonly globalvalue

env 

变量替换 变量的值替换它的名字

testvalue="this is a test"

echo $testvalue

  ${Variable name} 显示实际值到Variable name

${Variable name:+value} 如果设置了Variable name,则显示其值value,否则为空

${Variable name:?value} 如果未设置variable name,显示用户定义错误信息value

${Variable name:-value} 如果未设置variable name,则显示其值value

${Variable name:=value} 如果未设置variable name,设置其值并显示

变量清楚

unset $variablename 

位置变量

#!/bin/bash

# variable name  

$0  $1 $2  

标准shell变量

  /etc/profile

EXINIT 定义vi

HOME 指主目录 

IFS 间隔

LOGNAME

MAIL 邮箱放在哪里

MAILCHECK 邮件检查时间

  MAILPATH

PATH 路径

  TERM 终端类型   TERM=vt100

TZ  时区

PS1 登录提示符 set | grep “PS1”    [\u@\h \W]\$   PS1="ITTEST:"

PS2 

PWD set | grep “PWD”

SHELL

MANPATH

TERMINFO

 特殊变量

  $# 传递脚本的参数个数

$* 以一个单字符显示所有向脚本传递的参数,与位置变量不同,此选项参数可以超9个

$$ 脚本运行的当前进程ID号

$! 后台运行最后一个进程的ID号

$@ 与$#相同,但是使用是加引号,并在引号中返回每个参数

$- 显示shell使用的当前选项,与set命令功能相同

$?  显示最后命令的推出状态。0表示没有错误,其他任何值表明有错误

影响变量的命令 

  declare 设置或显示变量

-f 只显示函数名

-r 创建只读变量   declare  typeset

-x 创建转出变量 

export  用于创建传给子shell的变量

-- 表示选项结束 

-f 表明 名-值 对中的名字是函数名

-p 显示全局变量列表 

readyonly

set

shift [n]

typeset 

unset 

引号运算符 

引号非常必要

echo -e "ert, $SHELL '\n* china·echo itlab·"

 

表达式替换 

 

运算符的优先级 

运算符是对计算机发达指令

运算对象 -数字、字符 -变量 -表达式

表达式: 运算符和运算对象的组合体。 

 ~op1

op1<<op2

op1>>op2

op1&op2

op1~op2

op1 | op2 

 

 

转载于:https://www.cnblogs.com/birdgao/archive/2010/08/25/1807900.html

最新回复(0)