3

如何在system子例程调用中执行的命令中使用变量?例如,如果我想创建多个目录,如test_1_1,test_1_2等,test_3_3那么我的代码应该是什么?

我正在尝试以下代码,但似乎无法弄清楚在#### 部分中要写什么。

integer  :: i,j

do i = 1,3
   do j = 1,3 
      CALL system('mkdir folder ####') 
   enddo
enddo
4

1 回答 1

6
character (len=8) :: test_name

do i=1, 3
   do j=1, 3
      write (test_name, '( "test_", I1, "_", I1 )' ) i, j
      call system ( "mkdir " // test_name )
   end do
end do

只要数字是个位数,我的示例中的格式就可以使用。如果您想要更大的值,您可以使用I2.2(最多两位,如果是一位,则前导零),或者I0,对于需要的任何位数。

于 2013-07-15T05:48:25.250 回答