【问题标题】:Converting SQL Loader from Windows bat to Linux shell script将 SQL Loader 从 Windows bat 转换为 Linux shell 脚本
【发布时间】:2014-12-08 16:09:04
【问题描述】:

我有一个在 Windows 中工作的 SQL Loader bat 文件。我正在尝试将其转换为 Linux 脚本,但遇到各种错误。

这是 Windows bat:

sqlldr user@database/password ^
       control='.\Control\control_file.ctl' ^
       data   ='.\Data\data_file.txt' ^
       log    ='.\Log\log_file.log' ^
       bad    ='.\Bad\bad_file.bad'

这是我创建的 Linux 版本:

sqlldr userid = user@database/password
       control ='../ctl/control_file.ctl'
       data   ='../data/data_file.txt'
       log    ='../log/log_file.log'
       bad    ='../bad/bad_file.bad'

看来我的格式有误。任何帮助将不胜感激。

【问题讨论】:

  • 要在 shell 脚本中继续行,您需要在批处理脚本的末尾添加 \` at the end (akin to having ^`。或者,只需将其全部放在一行上。此外,这些参数中的空格可能在 shell 中不起作用,因此请删除它们(例如data='../data/data_file.txt'
  • 非常感谢@EtanReisner。我能够让它与您的建议一起使用!

标签: linux shell unix batch-file sql-loader


【解决方案1】:

要在 shell 脚本中继续行,您需要在末尾添加 `(类似于在批处理脚本的末尾添加 ^`。

或者,只需将其全部放在一行上。

此外,这些参数中的空格可能在 shell 中不起作用,因此请删除它们(例如 data='../data/data_file.txt')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-19
    • 2013-01-05
    • 1970-01-01
    • 2013-07-06
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多