0

为什么第 17 行不起作用(在代码中注释)?:

#!/bin/nawk -f

BEGIN {
    print "<html>"
    print "<body>"
    print "  <table border=2>"
    print "    <tr>"
    print "      <th>Name</th>"              
    print "      <th>Username</th>"              
    print "      <th>Email</th>"                    
    print "    </tr>"
}

{
    print "    <tr>"
    print "      <td>" $2 " " $1"</td>"                   
    print "      <td>"'{Substr($1,1,1)}' "</td>"  ###### Line 17                 
is
    print "      <td>" $3 "</td>"             

我可以在第 17 行写这样的声明吗?我试图得到名字的第一个字母。

4

1 回答 1

1

应删除此行中的单引号。目前,引用允许 shell 解析 Substr 并且您不希望这种情况发生。

该命令也是 substr 而不是 Substr。

print "      <td>"'{Substr($1,1,1)}' "</td>"  ###### Line 17      

改成-:

print "      <td>" substr($1,1,1) "</td>"
于 2013-04-20T09:30:01.410 回答