首页 > 解决方案 > 如何使 python 程序在 bash 脚本中循环执行?

问题描述

我有一个 bash 脚本,可以在下面的循环中执行 python 程序。我只看到它使用下面的脚本执行一次。echo 语句打印循环内目录中的所有文件名,而 pgm1.py 只执行一次。请建议我在这里必须做的事情,以不断地为目录中的所有文件执行。这是下面的代码。

LOG_DIR="directorypathname"
DT_H=`date '+%Y-%m-%d_%H_%M_%S'`
linkage_path="directoryname" 
yourfilenames=`ls $linkage_path`

for eachfile in $yourfilenames
do
    python3.5 ${CODE_DIR}/pgm1.py ${linkage_path}/${eachfile}  &> ${LOG_DIR}/${DT_H}.log
    echo ${linkage_path}/${eachfile}
done

标签: pythonbash

解决方案


你语法错误

for eachfile in $yourfilenames ; do
   python3.5 ${CODE_DIR}/pgm1.py ${linkage_path}/${eachfile} &>> \
      ${LOG_DIR}/${DT_H}.log
   echo ${linkage_path}/${eachfile}
   done

这应该够了吧


推荐阅读