无法处理从bash到python的两个命令行参数

时间:2017-10-21 14:50:55

标签: python bash

我正在尝试使用bash自动化python,如下所示。我在bash中使用循环为python提供第二个参数但是无济于事。我得到python文件的索引超出范围。代码和错误在

之下
#!/bin/bash
$input_file=$1
echo $1
for ((i = 2 ; i < 3 ; i++ )); 
do
    echo $i
    python extract_random_columns.py $input_file $i 

done  

错误:

./create_dataset.sh: line 2: =../data/ind_input_n_500_d_25_skyd_100.txt: No such file or directory
../data/ind_input_n_500_d_25_skyd_100.txt
2
2
Traceback (most recent call last):
  File "extract_random_columns.py", line 8, in <module>
    num_of_columns = int(argv[2])
IndexError: list index out of range

1 个答案:

答案 0 :(得分:0)

input_file="$1"
for ((i = 2 ; i < 3 ; i++ )); 
do
    echo $i
    python extract_random_columns.py "$input_file" "$i" 
done

从第一行的$ input_file中删除$