如何在变量 $File Equals 中使用的文件名中包含变量

Posted

技术标签:

【中文标题】如何在变量 $File Equals 中使用的文件名中包含变量【英文标题】:How to Include Variables in a File Name used in a Variable $File Equals 【发布时间】:2021-08-03 01:17:23 【问题描述】:

为什么回显不返回 - /lsf10/monitors/lpstat_email_1_vmobius_05122021.txt? 它返回 --> $FILE

#!/usr/bin/ksh
integer max=3
integer i=1
while [[ $i -lt $max ]]
do
today=`date +%m%d%Y`
FILE = "/lsf10/monitors/lpstat_email_$i_vmobius_$today.txt"
echo "the $FILE"

echo $i
echo "the $FILE"
(( i = i + 1 ))
done
 

【问题讨论】:

【参考方案1】:

在变量周围使用 $... 以在字符串文字中进行插值 - 它使事情更清晰并有助于解释器。

缩进有助于提高可读性和可维护性。

试试这个:

#!/usr/bin/ksh
integer max=3
integer i=1 
while (( i < max ))
do
    today=`date +%m%d%Y`
    FILE="/lsf10/monitors/lpstat_email_$i_vmobius_$today.txt"
    echo "the $FILE"
    echo $i
    echo "the $FILE"
    (( i ++ ))
done

【讨论】:

日期效果很好 - 但没有填充 $i - 它返回为 --> /lsf10/monitors/lpstat_email_05122021.txt

以上是关于如何在变量 $File Equals 中使用的文件名中包含变量的主要内容,如果未能解决你的问题,请参考以下文章

从另一个文件导入变量?

如何在makefile中的变量内迭代每个文件

java中如何判断两个变量相等

equals方法的使用

Java中比较各变量对象的推荐方法==还是equals

c语言如何在多个源文件之间共享一个变量及其值?