gpt4 book ai didi

java - 如何遍历子目录并将输入管道输入到输出文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:18:39 25 4
gpt4 key购买 nike

我以前从未做过 bash,我正在努力创建一个自动脚本来循环遍历每个子目录以通过管道输入。目前我正在尝试用 Java 运行一个程序,该程序被编写为从输入文本文件输入每个用户输入并输出结果。输入文件示例:

login
logout

输出示例:

You have logged in
You have logged out

脚本在文件夹/test/

输入在子目录中/test/input/somesubdirectory/someinput.txt我想要做的是遍历每个输入文本以运行 java 并输出到这样的文件夹中

/test/output/somesubdirectory/output.log

java直接在test文件夹之外

我做了什么:

java Test < /test/input/login/input.txt > /test/output/login/output.txt

我只知道如何直接访问一个输入和一个输出,但我不确定如何从每个子目录循环每个输入

我尝试过:

counter=0
for i in /test/input/*/*.txt;
do
java Test < $i.txt > /test/output/login/$(counter).log
counter=$((counter+1))
done

最佳答案

您可以使用:

while IFS= read -d '' -r file; do 
java Test < "$file" > /test/output/login/output-$((++counter)).log
done < <(find /test/input -name '*.txt' -print0)

Read more about this pattern in BASH FAQ

关于java - 如何遍历子目录并将输入管道输入到输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47145615/

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