shell编程-1


1. for循环


list="1 2 3"
for var in $list; do
     ...
done


使用seq命令产生序列
for var in $(seq 1 $cnt); do
     ...
done


2. 函数

函数定义
foo()
{
    $*                所有参数
    $1 $2 ... 具体参数


    对全局变量进行操作
    返回值只能是整数
}


函数调用
foo 1 2 3
$?记录了函数返回值


3. 字符串操作


${var}
${var#pattern}  从头部开始,最小匹配pattern,删除。
${var##pattern}  从头部开始,最大匹配pattern,删除。
${var%pattern}  从尾部开始,最小匹配pattern,删除。
${var%%pattern}  从尾部开始,最大匹配pattern,删除。


pattern:
   *  表示任何字符
    . 表示.


4. 格式化显示
echo -e "\t"        选项-e可以显示转义符"\t"
echo -e "string\c"        "\c"表示不换行


printf fmt  $var1 $var2 格式化显示
"%30s" 宽度30的字符串,右对齐
"%-30s" 宽度30的字符串,左对齐


5. awk
cat file | awk '{printf fmt, $1, $2, ...}'      取得想要的列
sort根据第一列排序,根据字符大小来排序
sort -n 将字符转为数字来排序


























  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值