我对docker、debezium、bash和kafka都是新手。我正在尝试在windows 10上运行mssql server的debezium教程/示例:
https://github.com/debezium/debezium-examples/blob/master/tutorial/readme.md#using-sql服务器
我可以开始拓扑,每一步。但是,当我转到第二步并执行以下命令时:
cat debezium-sqlserver-init/inventory.sql | docker exec -i tutorial_sqlserver_1 bash -c '/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD'
我得到以下错误:
bash:c:/program:没有这样的文件或目录
我完全不知道它为什么会拖 C:/Program
在这个问题上。我没有在命令中看到它,也没有在*.sql文件中看到它。有人知道为什么会这样吗?解决方法是什么?
注意1:我已经在当前目录下,这个命令应该可以运行,并且文件夹/文件路径中没有空格
注意2:我在gitbash中运行命令
使用时 set -x
要记录命令的运行方式,仍然没有 C:/Program
从下面的日志中可以看到:
$ cat debezium-sqlserver-init/inventory.sql | docker exec -i tutorial_sqlserver_1 bash -c '/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD'
+ cat debezium-sqlserver-init/inventory.sql
+ docker exec -i tutorial_sqlserver_1 bash -c '/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD'
bash: C:/Program: No such file or directory
1条答案
按热度按时间goqiplq21#
昨天我遇到了一个类似的问题,解决方法是在绝对路径前加一个反斜杠,比如:
/opt/mssql tools/bin/sqlcmd阻止转换到windows路径。