Linux下批处理文件编写

linux下的批处理文件,基本就是shell脚本文件。

一、最简单的脚本书写方法为:

1、新建一个文件,名字为test(自己定义的名字)
touch test.sh
2、在里面编写脚本
程序必须以下面的行开始(必须方在文件的第一行): 
 #!/bin/sh 
符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 
(能写一些shell普通命令,命令用分号隔开)
例子:

  1. #!bin/sh
  2. echo "==============================================="
  3. echo "================启动 Hadoop==================="
  4. echo "==============================================="
  5. start-all.sh;
  6.  
  7. echo "==============================================="
  8. echo "================启动 Spark===================="
  9. echo "==============================================="
  10. cd /usr/local/spark/spark-2.1.1-bin-hadoop2.7;
  11. ./sbin/start-all.sh;
echo代表在命令行打印消息。
3.执行方法
(1)在控制台输入命令执行:
   sh test.sh
(2)先给脚本可执行权限,双击执行:
右键此文件,选择属性->权限,最下方会有一个“允许以程序执行文件”,将这一项勾选,就可以了。
或在命令行下附予权限:
        chmod 777 test.sh
或: chmod +x test.sh

二、linux跨机器批处理执行命令

master 192.168.168.200

slave1 192.168.168.201

slave2 192.168.168.202

已经配置好三台机器的ssh免登陆。

在master 上写的脚本如何在其他机器上执行命令呢?

如果我连到另一台机器上只是执行一个命令可以这样写:

ssh  slave1  cd /opt/

如果我连到另一台机器上执行多于一个命令可以这样写:

ssh  slave1  "cd /opt/;exit;"

注意:当多于两个命令时,一定要把所有命令以分号的方式写在双引号里面。   

原文地址:https://www.cnblogs.com/yangcx666/p/8723920.html