mysql - 本地 shell 中的 ssh 连接和远程输出

标签 mysql bash shell ssh

我想远程运行本地命令文件并在 shell 窗口中本地获取输出。

实际上该命令是远程执行的,但我在本地 shell/控制台窗口中看不到结果。

知道如何实现以下命令吗?

ssh user@host 'bash -s' < /Users/daniel/bin/bash/fz_multiple_db_connections.sh 

其中 fz_multiple_db_connections.sh 包含:

#!/bin/bash
connections=(
             'mysql -u dbuser__name      --password=passw   dbname ' 
             'mysql -u dbuser__name1     --password=passw1  dbname1')

for f in "${connections[@]}"
do
    echo `${f}`
    echo `mysql show tables`
    echo `mysql exit`
done
exit

最佳答案

我认为您可能需要执行 ssh -t .... 来分配 tty。严格写入 stdoutstd::cout 的程序应该可以在没有 -t 的情况下正常工作,但如果您正在运行的程序需要访问权限到 /dev/tty (或其任何等效项),例如,要询问密码或其他内容,您需要 ssh< 的 -t 选项.

关于mysql - 本地 shell 中的 ssh 连接和远程输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12110775/

相关文章:

linux - 按书名/作者搜索书籍

java - eclipse - hibernate : No suitable driver found for jdbc:mysql://localhost:3306/hibernatedb

linux - 在 bash 中的字符之间添加某些变量值

bash - 在带有函数的 bash 中使用 set -e/set +e

sql - 创建一个 shell 脚本来修改和/或在 firefox 中创建书签

python - Linux 脚本创建目录结构

php - 带有wordpress的主从系统

mysql - 基于另一个表的 UPDATE 列

mysql - ds.tables(0) = 'ds.tables(0)' 抛出类型为 'System.NullReferenceException' vb.net 的异常

shell - 为什么这个 shell 脚本输出如此​​奇怪