从shell脚本中读取csv文件

时间:2016-10-11 17:41:07

标签: python bash shell csv

我正在运行脚本run.sh. 脚本执行如下。 $。/ run.sh read.csv 脚本的内容如下。

   tail -n +2 $1 | while IFS="," read -r A B C D E F;
    do
        python test.py ${A} ${B} ${C} ${D} ${E} ${F}
    done

我的问题是"如果我需要传递额外的命令行参数以及来自终端的read.csv这样(对于Ex:$./run.sh name sex DOB read.csv)我如何修改代码以便它可以工作精细。

因为如果我传递任何其他命令行参数和文件名(read.csv),我将获得文件read.csv的访问错误

1 个答案:

答案 0 :(得分:1)

您需要的是位置参数。这就是你如何做到的:

tail -n +2 $4 | while IFS="," read -r A B C D E F;##note now you would pass $4 to tail command which is your file name
do
    python test.py ${A} ${B} ${C} ${D} ${E} ${F}
done

您可以访问这些值,例如$ 1中的名称,$2中的性别,$ 3中的DOB和$ 4中的read.csv