我是shell脚本的新手,似乎无法弄清楚这个看似简单的任务.我有一个大约250行的文本文件(ciphers.txt),我想使用每行的第一列作为命令中的参数.任何帮助将不胜感激!
命令是:
openssl s_client -connect host:port -cipher argument
Run Code Online (Sandbox Code Playgroud)
当我一次做一个时它工作正常,但我真的不想运行相同的命令250次以上.到目前为止,这是我的脚本:
awk '{command = "openssl s_client -connect localhost:4433 -cipher > results.txt"
print $0 | command}' ciphers.txt
Run Code Online (Sandbox Code Playgroud)
我一直收到错误,所以我很确定我在某处有语法错误.awk的输出是否在-cipher后附加?
我有一个Java应用程序,它通过JDBC连接将可能是大文件的数据流传输到Postgres RDS中。
我正在使用以下命令,该命令适用于空整数类型。
COPY tableName FROM STDIN with (format csv, delimiter E'\u0001', NULL '', QUOTE E'\u0005')
Run Code Online (Sandbox Code Playgroud)
但是,这不适用于空日期字段(PSQLException:错误:日期的无效输入语法:“”)
如果我将命令修改为
COPY tableName FROM STDIN with (format csv, delimiter E'\u0001', NULL '\N', QUOTE E'\u0005')
Run Code Online (Sandbox Code Playgroud)
它适用于日期字段,但不适用于整数字段。(PSQLException:错误:整数的无效输入语法:“ \ N”)
我在这里看到过类似的问题,要么针对整数字段使用null,要么针对日期字段使用null,但不能同时解决这两个问题,所以我想知道是否有一种方法可以指定同时适用于整数字段和日期字段的null(或一种方法)。为不同的数据类型指定多个不同的空字符串)
我真的很想使用COPY,因为它的性能比解析文件并插入每条记录要好得多,所以希望有可能