linux - 使用 echo 将记录附加到文件时出错
问题描述
我想在 Datastage 序列作业中使用执行命令阶段写入记录。我正在使用以下语法。
echo "InputFileName;2021-03-25 06:54:58+01:00;AAA;Batch;FOP;FUNCTIONAL;INFO;在键值中发送的额外键列;201;OK;SubmitRequest;ERROR;CDIER0961E: REST 步骤无法调用 REST 服务,cause=javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated;;SupplyOnhand_20210325065458;;;;0;CDIER0961E: REST 步骤无法调用 REST 服务,cause=javax.net.ssl .SSLPeerUnverifiedException: 对等体未通过身份验证;;;;12;1;2021-03-25 05:55:18+00:00;2021-03-25 05:55:33+00:00" >> 文件名
下面是我得到的错误。
命令输出====> sh:-c:第0行:意外令牌(' sh: -c: line 0:
回显附近的语法错误未处理的失败(-1)遇到执行命令回显
我尝试在 linux 服务器上手动运行它,但在 Datastage 工作中失败。有人可以帮忙吗。
解决方案
您需要转义任何对 shell 重要的字符,或者将整个字符串包含在硬(单)引号中,而不是软(双)引号中。
推荐阅读
- objective-c - 预处理器门控(Objective-)C 代码仅出现在 Swift 中?
- android - 内部测试轨道 - 无法下载最新版本
- html - ios删除带有空格的div
- android - Android how to center align chips in chipgroup?
- java - 为图像描述写入 Exif 数据时出现 NotFileFound;读书很好
- python-2.7 - AWS Lambda - 在内存中生成 CSV 并将其作为附件发送到电子邮件
- mysql - 键'PRIMARY'mysql的重复条目'0'
- excel - If statement/Outlook/VBA : Drafting Emails
- mysql - MySQl 获取数据表一个表并使用它从另一个表中获取结果
- java - java object querying ( applying SQL logic on List of java objects)