我想创建一个Windows批处理文件来执行运行在Linux上的Sybase数据库上的查询。
批处理文件:
plink.exe -ssh sybase@<IP> -pw <PW> -m C:\scripts\script1.bat -t > C:\scripts\testing.logscript1.bat
echo --- query 1 -----
cd /sybase/OCS-15_0/bin/
isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb
sp_helpsegment
go
exit它可以正常工作,直到isql命令并在testing.log中给出输出:
--查询1- bash: isql:命令未找到bash: sp_helpsegment:命令未找到bash: go:命令未找到
请指点。
发布于 2016-07-27 14:24:25
一旦在数据库服务器(正如您所提到的Linux服务器)中设置Sybase ASE所需的环境变量,“‘isql”就可以工作了。有关更多详情,请参阅以下连结:
简单地说,在'/ Sybase‘中应该有一个名为'SYBASE.sh’的文件(我猜从示例代码来看,Sybase已经安装在这个目录中了)。您需要编辑用于连接到Linux服务器的用户主目录中的“.bashrc”文件来获取该文件。
要使sql工作,您将需要一个标志来指示脚本中sql块的开始和结束。请试用以下方法:
isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb <<EOF
sp_helpsegment
go
EOF你可以用任何其他词代替“EOF”
发布于 2020-02-29 20:46:04
我也面临着同样的问题。您需要插入sybase环境变量,如下所示:
. /sybase/ABD/SYBASE.sh
isql -U**** -P****** -S<SID> -X <<EOF会很好的。请尝尝这个。
发布于 2021-03-04 20:43:08
如果您没有更改de路径的权限,您可以找到isql的路径并以如下方式执行:
/sybase/OCS-15_0/bin/isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb
放置isql安装的前缀路径(它取决于您的版本和路径)
https://stackoverflow.com/questions/38611997
复制相似问题