Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / AWK操作字符串的截取

对于awk和Bash来说,他们使用的是不同的string索引系统;
 
bash的第一个字符从0开始记录;
 
awk的第一个字符从1开始记录;
 
#012345678  ------------Bash
 
#123456789  -------------Awk
 
以下是案例说明:[root@Slave02 shell]# vi substring-extraction.sh
#!/bin/bashString=23skidoo1echo ${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"
 echoexit 0