LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 711|回复: 3

如何知道特定字符串所在的域?[基本解决]

[复制链接]
发表于 2004-2-6 23:47:38 | 显示全部楼层 |阅读模式
举例,如:
javalee:x:500:500::/home/javalee:/bin/ksh
怎么知道x所在的域当然这里他在$2但是怎么得到这个$2呢?! :ask
 楼主| 发表于 2004-2-7 00:54:41 | 显示全部楼层
可惜对awk编程不了解 ,我还是用笨法~,用tr和grep -n:
  1. #!/bin/ksh
  2. key=$1;file=$2;filed=$3
  3. line=$(grep -n "\<$key\>" $file|cut -f1 -d":")
  4. cols=$(grep "\<$key\>" $file|tr "$filed" "\n"|grep -n "\<$key\>"|cut -f1 -d":")
  5. echo "line:"$line"\ncolum:"$cols""
复制代码
不知道用awk怎么做:ask
发表于 2004-2-8 17:03:02 | 显示全部楼层

回复: 如何知道特定字符串所在的域?

最初由 javalee 发表
举例,如:
javalee:x:500:500::/home/javalee:/bin/ksh
怎么知道x所在的域当然这里他在$2但是怎么得到这个$2呢?! :ask

  1. echo "javalee:x:500:500::/home/javalee:/bin/ksh" | gawk 'BEGIN{FS=":"}{for(i=1;i<=NF;i++)if($i=="x")print i}'
复制代码



 楼主| 发表于 2004-2-8 17:18:30 | 显示全部楼层
谢谢~~
原来关键在那个 if($i=="x") :thank
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表