首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >awk shebang不工作

awk shebang不工作
EN

Stack Overflow用户
提问于 2012-12-27 05:25:32
回答 2查看 1.3K关注 0票数 4

我有一个简单的awk程序:

代码语言:javascript
复制
#!/usr/bin/awk -f
BEGIN {print "work already!"}

如果我以如下方式运行:

代码语言:javascript
复制
awk -f panic

在(osx)终端上,它可以工作。但如果我尝试将其作为脚本运行,则会失败:

代码语言:javascript
复制
. panic
-bash: BEGIN: command not found

我用which awk检查了awk的位置,它确实位于/usr/bin/awk。你知道为什么它不工作吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-27 05:30:43

要将文件作为脚本运行,您必须键入:

代码语言:javascript
复制
./<script>

编辑

正如William Pursell所指出的,.不是source的别名,而是恰好相反。

。不是源的别名。。是用于在当前shell中运行另一个脚本的sh标准命令。source是起源于csh的命令,许多sh克隆都将其用作..的别名。如果source不是一个令人讨厌的东西,那么它是.的别名,而不是相反。

票数 4
EN

Stack Overflow用户

发布于 2012-12-27 05:30:25

./panic身份运行它,而不是以. panic身份运行,因为后者与运行source panic相同,后者不会执行您想要的操作。请参阅man source

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14046455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档