Linux小知识(1): bash中执行数据库的相关操作

    工作中经常会遇到命令行操作数据库或登陆至其他服务器等情况,往往需要通过命令行进入相关的数据库或登陆至相关的服务器,再执行指令操作,因此有没有方法,在命令行或bash脚本中模拟进入数据库或登陆服务器操作呢?本文将对这一现状进行探讨!

    1. Here Document

    Here document 是linux shell中一种特殊的重定向方式,其格式为:

cmd << delimiter
    Here document content
delimiter

    其作用在于将两个分隔符delimiter之间的内容"Here document content"传递给执行命令cmd作为参数

    2. Bash脚本

    通过1中所述方法,可以实现模拟登陆数据库,并执行数据库相关的操作,也可实现其他类似的操作

    1) 执行mongo操作

#!/bin/bash

source ~/.bashrc
MONGO_BIN=/usr/bin/

$MONGO_BIN/mongo 127.0.0.1:27017 << EOF
use test_db
db.test_table.find().count()
EOF

    2) 执行mysql操作

#!/bin/bash

source ~/.bashrc
MYSQL_BIN=/usr/bin/

$MYSQL_BIN/mysql -h 127.0.0.1 -utest -ptest  << EOF
use test_db
select count(*) from SongInfo;
EOF

     3) 登陆ftp服务器

#!/bin/bash

source ~/.bashrc

ftp -niv <<- EOF
open ip port
user username passward
bin
get $1
bye
EOF
 
原文地址:https://www.cnblogs.com/mengrennwpu/p/6795750.html