sed错误行地址0的使用无效
我使用sed用于:sed错误行地址0的使用无效,sed,Sed,我使用sed用于: RUN=${SLURM_ARRAY_TASK_ID} INPUT_DIR=/path OUTPUT_DIR=/path INPUT_FILE=$(ls $INPUT_DIR/*.txt | sed -n ${RUN}p) SAMPLE=$(basename "$INPUT_FILE" .txt) echo "RUN #${RUN} with sample ${SAMPLE}" 但它给出了行的错误: INPUT_FILE=$(ls $
RUN=${SLURM_ARRAY_TASK_ID}
INPUT_DIR=/path
OUTPUT_DIR=/path
INPUT_FILE=$(ls $INPUT_DIR/*.txt | sed -n ${RUN}p)
SAMPLE=$(basename "$INPUT_FILE" .txt)
echo "RUN #${RUN} with sample ${SAMPLE}"
但它给出了行的错误:
INPUT_FILE=$(ls $INPUT_DIR/*.txt | sed -n ${RUN}p):
sed: -e expression #1, char 3: invalid usage of line address 0
它以前工作得很好,但现在出现了一个错误。如果有人能帮我解决,我将不胜感激。谢谢大家! 您的
$RUN
为零,请在您的sed
命令上方执行echo$RUN一行以进行验证。请注意:在中,将sed
语法与shell语法分开是一件好事。可能是sed-n“${RUN}p”)?祝你好运。SLURM\u ARRAY\u TASK\u ID
的值是多少?你想做什么(比如find/path-name“*${SLURM\u ARRAY\u TASK\u ID}*.txt-printf%f
)?将您的代码复制/粘贴到中,并修复它告诉您的问题作为起点。此外,用户定义的变量名也不要使用全大写,以避免与内置变量名冲突并混淆代码。