繁体   English   中英

如何使用 sbatch 作业循环遍历文本文件

[英]How to loop through a text file using sbatch jobs

我有一个包含一些文本行的文本文件,我想在我的 python 脚本中将文件的每一行作为参数传递。 我遇到的问题是读取文件。 如果我可以读取文件,我应该能够将文件的每一行作为我的 python 作业提交的参数传递。 这是我尝试过的

#!/bin/bash
#SBATCH -N 1
#SBATCH -p RM-shared
#SBATCH -t 1:00:00
#SBATCH --ntasks-per-node=64


set file = \myfolder\sample.txt

for /f "tokens=*"  %%val in (%file%) do(
  echo %%val
  python3 test.py %%val
  )

当我运行此作业的批量提交并检查 slurm.out 文件时,我看到类似“'"tokens="' 附近的意外错误

请问有谁知道我如何从文本文件中读取并将其作为参数传递给我的 python 脚本?

Slurm 期望提交脚本的语法是有效的 (Linux) shell 脚本,通常是 Bash(因此您将shebang设置为第一行)。 但是您的脚本不使用 Bash 语法,而是使用 Windows Batch 脚本语法。

解释的 Bash 被%%语法混淆了; 因此错误消息"unexpected error near '"tokens="'

您必须将脚本翻译成有效的 Bash。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM