gpt4 book ai didi

java - Linux 使用 java 合并文件的命令不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 03:42:46 26 4
gpt4 key购买 nike

我正在尝试使用 java 程序执行终端命令来合并两个 .csv 文件,我的命令在终端上工作正常,但在 java 中无法正常工作。

下面是我的代码:

String command = "awk 'FNR==1 && NR!=1{next;}{print}' /opt/test/*.csv >> /opt/test/output.csv";

Process proc;
int exitStatus;
while (true) {
try {
proc = Runtime.getRuntime().exec(command);

exitStatus = proc.waitFor();

break;
} catch (java.lang.InterruptedException e) {
System.out.println("inside exception" + e.getMessage());
}
}
if (exitStatus != 0) {
System.out.println("Problem occured");
}

最佳答案

我认为问题不在于java代码,而在于Linux对文件的处理:您将输出定向到一个文件,该文件在创建后立即被视为输入。

尝试将此作为命令:

awk 'FNR==1 && NR!=1{next;}{print}'/opt/test/*.csv >>/opt/test/output.txt ; mv/opt/test/output.txt/opt/test/output.csv

关于java - Linux 使用 java 合并文件的命令不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29117194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com