对于GET_环境_变量,向Fortran程序提供了哪些环境变量
我想在Fortran代码中使用$HOSTNAME环境变量的值 我的尝试是:对于GET_环境_变量,向Fortran程序提供了哪些环境变量,fortran,environment-variables,hostname,Fortran,Environment Variables,Hostname,我想在Fortran代码中使用$HOSTNAME环境变量的值 我的尝试是: CHARACTER(LEN=100) :: hostname INTEGER :: status_value = 0 CALL GET_ENVIRONMENT_VARIABLE("hostname",hostname, STATUS=status_value) IF (status_value == 2) THEN WRITE(nout,*) 'WARNING: Processo
CHARACTER(LEN=100) :: hostname
INTEGER :: status_value = 0
CALL GET_ENVIRONMENT_VARIABLE("hostname",hostname, STATUS=status_value)
IF (status_value == 2) THEN
WRITE(nout,*) 'WARNING: Processor does not support environment variables - hostname is unknown.'
hostname = 'Unknown'
ELSE IF (status_value == -1) THEN
WRITE(nout,*) 'WARNING: Hostname is too long for character variable - hostname is truncated.'
ELSE IF (status_value == 1) THEN
WRITE(nout,*) 'WARNING: $HOSTNAME environment variable does not exist - hostname is unknown.'
hostname = 'Unknown'
但我的结果是,我总是得到$HOSTNAME不存在的结果
我对状态值的解释基于以下内容:
有趣的是,上面页面的示例使用了“HOME”环境变量。这个环境变量适合我
但我看不出$HOSTNAME为什么不:
MacBook-Pro:1N45 emiller$ echo $HOSTNAME # My shell prompt
MacBook-Pro.local
发生了什么事?我的Fortran程序在运行时看到什么环境
不管怎样,我使用的是iFort 12。这实际上很好,但在大多数平台上,这些环境变量名称区分大小写。我使用gfortran或ifort在我的linux机器上获得您的结果,但是如果我将您的“hostname”字符串更改为“hostname”,我将获得预期的结果