我是bash脚本新手。我正在尝试运行以下脚本:
#! /bin/bash
#the following command runs fine within the bash script
awk>/home/Bash_Scripts/filename1 -F, '$3!="constant"{print}' /home/Bash_Scripts/logs.csv
# THE FOLLOWING COMMAND WORKS FINE FROM COMMAND LINE BUT NOT FROM WITHIN BASH SCRIPT
/usr/bin/awk -f /home/Bash_Scripts/process.awk /home/Bash_Scripts/filename1
有人可以解释一下原因吗?两者都是awk命令。一个只能从命令行工作,而不能在bash脚本中工作。
提前致谢。
答案 0 :(得分:1)
三点:
/home/Bash_Scripts/filename1
,但在命令行中输入文件/home/Bash_Scripts/logs.csv
是脚本中的输入文件。/usr/bin/awk
,但在脚本中只使用awk
。这与通常所做的相反,因为您知道在命令行中设置PATH
但在一般情况下对于脚本一无所知。