gpt4 book ai didi

Gnuplot;迭代目录中的文件以打印 png

转载 作者:行者123 更新时间:2023-12-02 14:26:45 25 4
gpt4 key购买 nike

在目录 l250 中我有几个文件。它们都以“l2_”开头,后面的部分是数值。我希望能够绘制大约 300 个文件的 last.sh 文件中的内容。我想知道迭代该文件的方式是什么,并将其设置为 $1,将第二个值设置为 $2。

我在想,因为这些文件位于我可以使用的当前目录中。但后来我正在阅读有关 awk 和 csv 的内容,我不知道该怎么办。我想了解什么是迭代大量文件评估器的更好方法,然后将其放入 main.sh 并运行它。

main.sh

sh last.sh l2_4 1
sh last.sh l2_5 2
sh last.sh l2_6 3
sh last.sh l2_7 4
.
.
.

最后.sh

gnuplot << EOF
set terminal png
set output "finished/$1.png"
set xlabel "Angs"
set ylabel "Angs"
set title "$1 | $2 fs "
set zrange [0: 0.00001]
set pm3d map
splot "$1"
EOF

我在命令行中运行以下命令:

$sh main.sh

最佳答案

首先生成一个包含所有文件名的列表

list = system('ls l2_*')

然后您可以使用 do for ... 进行迭代(需要 gnuplot 4.6):

set terminal pngcairo
set xlabel "Angs"
set ylabel "Angs"
set zrange [0: 0.00001]
set pm3d map

list = system('ls l2_*')
i = 1

do for [file in list] {
set output sprintf('finished/%s.png', file)
set title sprintf("%s | %d fs", file, i)
splot file
i = i + 1
}

关于Gnuplot;迭代目录中的文件以打印 png,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26582560/

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