- 论坛徽章:
- 0
|
大家好,我是SHELL初学,有诸多问题不能解决,挑两个如下:
1,怎么在SHELL中处理字符串
比如说,写一个脚本程序,读入一个参数,并判断,这个参数是不是以"http://"开头的?如果是,把这个参数赋给变量X,把前缀变成"https://"然后赋给变量Y。用SHELL编写怎么写?
代码:
if [ $# -eq 1 ] ; then
X=$1
TEMP=substr($X,0,7)
if [ $TEMP=="http://" ] ; then
Y="https://"+substr($X,
echo "X=" $X
echo "Y=" $Y
fi
fi
上面的代码有好多错(显然),因为我不知道在SHELL里面应该怎样处理字符串。恳请高手帮我修改修改。
2,怎样把一个命令输出到stderr的内容赋给一个变量。
比如一个名为a.out的程序往stdout输出字符串"to stdout",往stderr输出字符串"to stderr"。
在SHELL中使用下面的语句:
X=`a.out`
那么程序输出到stdout的内容"to stdout"将被赋给变量X,而输出到stderr的内容"to stderr"将被打印在屏幕上。
请问用什么方法把输出到stderr的内容"to stderr"赋给变量Y,同时把输出到stdout的内容"to stdout"赋给变量X?
我知道我的问题很弱,对不起大家了。 |
|