如何从命令行读取输入?

时间:2018-04-18 11:01:05

标签: shell unix input awk

我必须从命令行读取一些调用awk脚本的shell脚本。据我所知,读取一个awk脚本是不可能的,所以我必须将它读入shell脚本,然后将该变量的值传递给awk脚本,以便我可以使用它。怎么办呢?

2 个答案:

答案 0 :(得分:0)

例如在Bash中,您使用read将输入读入变量,并使用awk的命令行参数将变量传递给awk:

$ read -p PROMPT var ; awk -v awkvar="$var" 'BEGIN{print "You wrote: " awkvar}'
PROMPTfoo
You wrote: foo

答案 1 :(得分:0)

在这里: -

使用以下信息创建一个shell脚本

vi my.sh

现在添加以下脚本行

#!/bin/bash

#add your awk command here with $1
echo $1
while shift
do
   #add your awk command here with $i
   echo $1
done

保存文件和

chmod 777 my.sh

现在运行: -

./my.sh  hello world how are you doing

输出: -

hello
world
how
are
you
doing