运行awk脚本文件遇到不能执行问题

使用系统:Ubuntu10.04

$ cat tmp.awk
#!/bin/awk -f
{print $1}

$ cat date.f
48  Dec  3BC1997 LPSX 68.00 LVX2A  138
483 Sept 5AP1996 USP  65.00 LVX2C  189
47  Oct  3ZL1998 LPSX 43.00 KVM9D  512
219 dec  2CC1999 CAD  23.00 PLV2C  68

1.先给脚本加了执行权限chmod u+x tmp.awk,然后运行竟然找不到.

$ tmp.awk date.f
tmp.awk:找不到命令

2.继续尝试

$ ./tmp.awk date.f
bash: ./tmp.awk:/bin/awk:损坏的解释器: 没有那个文件或目录

3.问题出在/bin下没有awk命令

$ which awk
/usr/bin/awk

$ whereis awk
awk: /usr/bin/awk /usr/lib/awk /usr/share/awk /usr/share/man/man1/awk.1.gz

4.原来awk命令在/usr/bin下{/usr/bin(系统上命令的主目录)、/bin(包含由系统管理员和用户同时使用的命令,但只在没有其他文件系统安装时需要用到),以及 /usr/bin/X11(包含 X window 系统的二进制文件)}

修改tmp.awk 脚本文件
将#!/bin/awk -f改为:#!/usr/bin/awk -f
5.再次运行,问题解决

$ ./tmp.awk date.f
48
483
47
219

你可能感兴趣的:(shell编程)