带前导零的循环的gnuplot

带前导零的循环的gnuplot,gnuplot,Gnuplot,我想绘制包含在从001到100枚举的100个文件夹中的data.dat 因此,命令是: p for [i=001:100] i."/data.dat" w l not 但是前导零将被丢弃,并且它无法找到除最后一个文件之外的文件。 我也试过了 p for [i in "`seq -w 001 100`"] i."/data.dat" w l not 这就产生了错误 warning: Cannot find or open file "00100200300400500600700800901

我想绘制包含在从001到100枚举的100个文件夹中的data.dat

因此,命令是:

p for [i=001:100] i."/data.dat" w l not
但是前导零将被丢弃,并且它无法找到除最后一个文件之外的文件。 我也试过了

p for [i in "`seq -w 001 100`"] i."/data.dat" w l not
这就产生了错误

 warning: Cannot find or open file "001002003004005006007008009010011012013014015016017018019020021022023024025026027028029030031032033034035036037038039040041042043044045046047048049050051052053054055056057058059060061062063064065066067068069070071072073074075076077078079080081082083084085086087088089090091092093094095096097098099100/data.dat"
 No data in plot
因此,我想知道是否有一种聪明的方法来绘制数据,而不必这样做:

p for [i in "001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100"] i."/data.dat" w l not

您可以使用“sprintf”函数的格式说明符将整数转换为显式格式的字符串:

p for [i=1:100] sprintf("%03.0f/data.dat", i) w l not
请注意位数之前的尾随0,它告诉sprintf显式写入尾随零。这似乎只适用于铸造浮动,虽然我找不到一个原因