在shell脚本中如何调用hadoop 命令

时间:2022-08-23 15:34:00

我们在shell脚本中可能会用到hadoop或者其他命令,而这些命令可能是一个整体,如果我们只是简单的写入到shell脚本中,可能会被分解成其他的各个子字段,即有可能会分成两部分去执行,这样就会导致命令执行失败。

hadoop fs -get /XXXXXX
上面这个就会分成hadoop fs 和get两部分这样就执行不成功了

所以在shell脚本中应该用反引号“括起来,注意这个事反引号不是单引号:

hadoop fs -get /XXXXXX

shell中单引号、双引号和反引号的区别

在bash中“空格”是一种很特殊的字符,比如在bash中这样定义str=this is String,这样就会报错,为了避免出错就得使用单引号”和双引号”“。

单引号”,双引号”“的区别是单引号”剥夺了所有字符的特殊含义,单引号”内就变成了单纯的字符。双引号”“则对于双引号”“内的参数替换($)和命令替换()是个例外。
反引号
是命令替换,命令替换是指Shell可以先执行`中的命令,将输出结果暂时保存,在适当的地方输出。语法:command`