我是新的蜜蜂到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"''
答案 0 :(得分:0)
你需要:
echo "$2" | sed -e 's/,/: chararray,/'
或类似而不是:
sed -e 's/,/: chararray,/g' "$2"
正如所写的那样,sed认为你要求它在名为ID,EmpName,Address
的文件上运行,而不是在具有该值的字符串上运行。
警告:我不知道你问题中标记的hadoop
或apache-pig
是什么,以上是如何在UNIX shell中编写代码。