如何在shell脚本中搜索和替换命令行参数值

时间:2015-03-10 12:05:47

标签: shell sed

我是新的蜜蜂到Shell脚本。我试图搜索并替换命令行参数值。

例如:Sh script.sh 'ID,EmpName,Address'

在$ 1的命令行中,我的值为ID,EmpName,Address

预期输出:ID:chararray,EmpName:chararray,地址:chararray

代码尝试

 Sh script.sh 'ID,EmpName,Address'
    Print 'sed -e 's/,/: chararray,/g' '"$2"''

1 个答案:

答案 0 :(得分:0)

你需要:

echo "$2" | sed -e 's/,/: chararray,/'

或类似而不是:

sed -e 's/,/: chararray,/g' "$2"

正如所写的那样,sed认为你要求它在名为ID,EmpName,Address的文件上运行,而不是在具有该值的字符串上运行。

警告:我不知道你问题中标记的hadoopapache-pig是什么,以上是如何在UNIX shell中编写代码。