linux里面python调用系统命令问题

想用linux里的awk处理一个文本,输入行号,打印出来。因为数据是逗号分隔的csv文件,我第一时间就想起了awk。但是在写python时,出错了。

以下是用shell写的程序可以运行:

#!/bin/bash
echo -n "please enter the line:"
read lie
awk  -F ',' -v var="$lie"  '{print $var}'  test_csv.csv >lines.txt


但是在python里面就报错了:

#!/usr/bin/python

#filename: hash.py
import os
os.system('echo -n "please enter the line:"')
os.system('read lie')
os.system('awk  -F ',' -v var="$lie"  '{print $var}'  test_csv.csv >lines.txt')

错误提示:

https://img.mukewang.com/5b4eab750001ba7c15400202.jpg

test_csv.csv文件里面有50列10000行的数据

千万里不及你
浏览 318回答 2
2回答

胡说叔叔

os.system("awk  -F ',' -v var=\"$lie\"  '{print $var}'  test_csv.csv >lines.txt")
打开App,查看更多内容
随时随地看视频慕课网APP