当前位置: 技术问答>linux和unix
shell基础的几个问题
来源: 互联网 发布时间:2016-12-12
本文导语: 1. Linux中 $KEN=1111 $readonly KEN 接着不能KEN=新值,也不能unset KEN,该如何做?才能去掉这个变量? 就是想抹杀掉 2. set和env关系是什么 设置变量export VN=sdfsa 二者均能看到 3.这个比较郁闷,不知道怎么回事 shell中条件测...
1.
Linux中
$KEN=1111
$readonly KEN
接着不能KEN=新值,也不能unset KEN,该如何做?才能去掉这个变量?
就是想抹杀掉
2.
set和env关系是什么
设置变量export VN=sdfsa
二者均能看到
3.这个比较郁闷,不知道怎么回事
shell中条件测试的字符串比较
以下是我的操作结果
$KEN=”abc”
$[ -z $KEN]
$echo $?
1
$[ $KEN=”123” ]
$echo $?
0
TYPE="/dev/rmt1"
TYPE2="/dev/rmt2"
[ "$TYPE"="$TYPE2" ]
echo $?
0
[ "aaa"="aaa" ]
echo $?
0
[ "bbb"="aaa" ]
echo $?
0
为什么明明该出现1的时候都是0?
Linux中
$KEN=1111
$readonly KEN
接着不能KEN=新值,也不能unset KEN,该如何做?才能去掉这个变量?
就是想抹杀掉
2.
set和env关系是什么
设置变量export VN=sdfsa
二者均能看到
3.这个比较郁闷,不知道怎么回事
shell中条件测试的字符串比较
以下是我的操作结果
$KEN=”abc”
$[ -z $KEN]
$echo $?
1
$[ $KEN=”123” ]
$echo $?
0
TYPE="/dev/rmt1"
TYPE2="/dev/rmt2"
[ "$TYPE"="$TYPE2" ]
echo $?
0
[ "aaa"="aaa" ]
echo $?
0
[ "bbb"="aaa" ]
echo $?
0
为什么明明该出现1的时候都是0?
|
1.
Linux中
$KEN=1111she
$readonly KEN
接着不能KEN=新值,也不能unset KEN,该如何做?才能去掉这个变量?
就是想抹杀掉
=========================================================
既然设置为readonly了,怎么还可能再设置为可写了,当初你的目的就是设置为只读的
就像c、c++里的只读变量,用const声明之后不可能再重新设置为可变得
2.
set和env关系是什么
设置变量export VN=sdfsa
二者均能看到
===============================================================
env会把set出来的变量给显示出来
3.这个比较郁闷,不知道怎么回事
shell中条件测试的字符串比较
以下是我的操作结果
$KEN=”abc”
$[ -z $KEN]
$echo $?
1
$[ $KEN=”123” ]
$echo $?
0
TYPE="/dev/rmt1"
TYPE2="/dev/rmt2"
[ "$TYPE"="$TYPE2" ]
echo $?
0
[ "aaa"="aaa" ]
echo $?
0
[ "bbb"="aaa" ]
echo $?
0
为什么明明该出现1的时候都是0?
================================
echo $?表示上一个命令的退出结果,成功为0,那些命令都执行成功了,所以是0
Linux中
$KEN=1111she
$readonly KEN
接着不能KEN=新值,也不能unset KEN,该如何做?才能去掉这个变量?
就是想抹杀掉
=========================================================
既然设置为readonly了,怎么还可能再设置为可写了,当初你的目的就是设置为只读的
就像c、c++里的只读变量,用const声明之后不可能再重新设置为可变得
2.
set和env关系是什么
设置变量export VN=sdfsa
二者均能看到
===============================================================
env会把set出来的变量给显示出来
3.这个比较郁闷,不知道怎么回事
shell中条件测试的字符串比较
以下是我的操作结果
$KEN=”abc”
$[ -z $KEN]
$echo $?
1
$[ $KEN=”123” ]
$echo $?
0
TYPE="/dev/rmt1"
TYPE2="/dev/rmt2"
[ "$TYPE"="$TYPE2" ]
echo $?
0
[ "aaa"="aaa" ]
echo $?
0
[ "bbb"="aaa" ]
echo $?
0
为什么明明该出现1的时候都是0?
================================
echo $?表示上一个命令的退出结果,成功为0,那些命令都执行成功了,所以是0
|
2,env只能看到export出来的变量
set 还可以看到没有export的变量
set 还可以看到没有export的变量
|
额,注意[]内部需要空格
|
字符串比较用 == 数字用-eq
o god。你google也一大堆啊
o god。你google也一大堆啊