问题描述
- 求助各位~一个有关linux中.sh脚本里写循环的问题,谢谢O(∩_∩)O~
- a = [""name1""name2""name3""......""name100""]
for i in 路径/*.py #这个路径底下有100个python脚本名字不同,代码一样do 我需要把每个python文件打开,改动一行if name = """":把a中名字对应进去,保存,运行下边这条 python $i > $i.txt #各自结果存到相应的txt($i.txt 这句不确定写对了没。。。)donedo里面有两个任务,一是把python脚本改下,就是粘进去相应名字(100个名字,100个python脚本,100个结果txt)。二是运行这个脚本其实开始我都是对着a列表,打开python自己粘进去的再运行,但现在时间紧迫,不知谁能帮忙想想怎么写呢?
解决方案
看如下脚本可以不:
a=""name1:name2:...:name100""
n=1
for i in $(ls) ;
do
e=""echo $a | cut -d : -f $n""
name=$(eval $e)
sed -i s/if name = """"/if name=""$name""/g $i python $i > ${i}.txt
done
解决方案二:
忘记n+1了,在循环最后一行加上n=$(($n+1))
时间: 2024-10-29 23:12:17