如何将文件中的每一行快速赋值给不同变量?
批量从文件生成带序号的日期变量
直接用bash脚本就能快速实现,通过循环读取文件内容的同时维护计数器,格式化三位序号后动态生成变量:
#!/bin/bash count=1 while IFS= read -r line; do # 跳过空行(如果文件里没有空行可删除这一行) [ -z "$line" ] && continue # 把计数器格式化为三位带前导零的数字,拼接成变量名d001、d002... var_name=$(printf "d%03d" $count) # 动态执行赋值命令 eval "$var_name='$line'" ((count++)) done < 你的日期文件名.txt
关键部分说明:
IFS= read -r line:确保读取每行内容时不丢失首尾空格,且正确处理反斜杠等特殊字符printf "d%03d" $count:将计数器转换成三位固定长度的序号,保证变量名统一为d001到d365的格式eval:用来执行动态生成的赋值语句,实现给自定义变量名赋值
脚本运行后,直接调用变量即可验证结果:
echo $d001 # 输出01-01-2000 echo $d002 # 输出02-01-2000
内容的提问来源于stack exchange,提问作者domestic ivy
相关产品推荐
相关产品推荐

