3

bashスクリプトを使用してsshを使用してリモートサーバー上にデータベースを作成したいと思います。このようなもの

#!/bin/sh
ssh user@example.com 'mysql -h example.com -uroot -pMYPASSWD -e "CREATE DATABASE $1;"'

ターミナルで私がそれを次のように実行できるように

$ myBashScript nameOfNewDatabase
4

1 に答える 1

3

次のスクリプトは、任意のコマンドをリモートで実行できます

#!/bin/bash
# call mysql on a remote server to execute the given command 

# show usage and exit
usage() {
  echo "$0 server sql-command"  1>&2
    exit 1
}

# check number of arguments
if [ $# -lt 2 ]
then
  usage
fi

# get server name and sql command
server="$1"
sql="$2"

# copy command to a temporary file
tmpsql="/tmp/sql$$"
echo "$sql" > $tmpsql

# copy command file to server
scp $tmpsql $server:$tmpsql
# run command remotely with removing command file afterwards
ssh $server "mysql -uroot -pPASSWORD < $tmpsql;rm $tmpsql"
# remove local copy of command file
rm $tmpsql
于 2012-10-16T08:00:52.843 に答える