awk使用

来源:互联网 发布:淘宝营销技巧话语 编辑:程序博客网 时间:2024/06/03 19:00

如果是JournalNode则kill掉:

/opt/java/jdk1.8.0_144/bin/jps|awk '{aa="if [ \"JournalNode\" == \""$2"\" ];then  kill -9 "$1";fi";system(aa)}'


for i in {6..8};do ssh node$i '/opt/java/jdk1.8.0_144/bin/jps| awk '\''{aa="echo aaa"$1";kill -9 "$1;if($2 ~/JournalNode/){print $1,$0;system(aa)}}'\''';done


查找并计算内存

 ssh node1 'eval $(cat /proc/meminfo| grep '\''MemT'\'' | awk '\''{printf("vara=%s",'\''\$2/1000'\'');}'\'');echo $vara'
原则:单引号全部转义,双引号不变。单引号双引号对称地位。


安装时需要输入

Proceed formatting /hadoop-ha/master? (Y or N) 17/11/02 05:16:44 INFO ha.ActiveStandbyElector: Session connected.

即需要执行下列脚本时会需要输入Y N

可以使用expect解决:

(/opt/hadoop/hadoop-2.7.4/bin/hdfs zkfc -formatZK)


#start formatZK
CMD_PROMPT="\](\$|#)"


for i  in {1..1};
do
expect -c "
#    send_user connecting\ to\ $i...\r    # 空格要转义
    spawn ssh   node$i \"ls -al\"
    spawn ssh   node$i \"/opt/hadoop/hadoop-2.7.4/bin/hdfs zkfc -formatZK\"
    expect {
            *(Y\ or\ N)* { send -- Y\r;exp_continue;}
    }
    exit
"
echo "\r"

done