shell编程

读文件一行的方法

cat file | while read line
do 
    $line
done

在上面这种方法中,假设在循环外部定义了变量,在循环内部改变它,除了循环,变量的值还是循环前的初始值。管道连接的两端是两个线程,所以在管道另一侧的数据改变,一般不会影响另一端的变量。

while read line
do 
    $line
done < file

将命令的输出内容重定向到文件

cat file1 > file2

如果文件file2不存在,创建,并写入结果。如果文件存在,则覆盖掉内容。

cat file3 >> file4

如果文件不存在, 那么就创建它, 如果存在, 那么就追加到文件后边。

a.out >> file6 2>&1

2代表标准错误输出stderr,1代表标准输出stdout。将标准输出的内容输出到file6,标准错误输出2的处理方式等同于标准输出1,也就是说将stdout和stderr的输出都重定向到file6。

判断一个字符串是否为空

-z str 

判断str为空则值为真。

-n str

判断字符串非空则值为真。

if语句

if [ exp ] && [ exp ]; then
    do something
else if []
    do something
fi

大小写字母转换

typeset -u mystr
mystr="aa333a"
echo $mystr

mystr的中的小写字母变成了大写字母。如果是大写换小写可以用”-l”(字母L的小写)。

echo $mystr | tr 'a-z' 'A-Z'

判断两个字符串是否相等

if [ $str1 = $str2 ]
then
else
fi

需要注意是“=”既可以用来比较字符串也可以用来比较数值,而“-eq”只能比较数值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值