设为首页 加入收藏

TOP

AWK操作字符串的截取
2014-11-24 08:05:30 来源: 作者: 【 】 浏览:0
Tags:AWK 操作 字符串 截取

对于awk和Bash来说,他们使用的是不同的string索引系统;

bash的第一个字符从0开始记录;

awk的第一个字符从1开始记录;

#012345678 ------------Bash

#123456789 -------------Awk

以下是案例说明:


[root@Slave02 shell]# vi substring-extraction.sh
#!/bin/bash


String=23skidoo1


echo ${String:2:4}
echo |awk '{ print substr("'"${String}"'",3,4) }'


exit 0
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"substring-extraction.sh" [New] 8L, 108C written
[root@Slave02 shell]# sh substring-extraction.sh
skid
skid
[root@Slave02 shell]#


使用变量的前缀来匹配前面声明过的所有变量;

如:


[root@Slave02 shell]# xyz23=watever
[root@Slave02 shell]# xyz24=asdf
[root@Slave02 shell]# echo "
a=${!xyz*}"
a=xyz23 xyz24
[root@Slave02 shell]# echo "a=${!xyz@}"
a=xyz23 xyz24
[root@Slave02 shell]#


抛骰子游戏;

SPOTS=6 -----取模为6,范围在0-5
die1=0
die2=0


------------2个变量名称,保证每个平面选择的数字记录相同



let "die1 = $RANDOM % $SPOTS +1"
let "die2 = $RANDOM % $SPOTS +1"

let "throw = $die1 + $die2"

echo "Throw of the dice = $throw"
echo


exit 0


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Ubuntu 10.04编译LTP 下一篇shell 浮点运算工具bc

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·每日一道面试题-多线 (2025-12-26 06:20:17)
·java项目中哪些地方 (2025-12-26 06:20:14)
·Java真的是要没落了 (2025-12-26 06:20:12)
·C++ Lambda表达式保 (2025-12-26 05:49:45)
·C++ Lambda表达式的 (2025-12-26 05:49:42)