Dit is de tweede avond dat ik hier mee bezig ben, maar ik krijg het maar niet voor elkaar om een shell commando uit te laten voeren door python.
Het gaat om de volgende:
Dit is de syntax voor in perl. Deze voert dit uit, en wat hier uitkomt boeit ff niet (ben ik zelf ff vergeten namelijk
)
Maar goed, dit zou er in python lijkt me zo uit moeten zien:
Om dit vervolgens uit te voeren moet (dacht ik) dit gedaan worden (na wat gezoek op internet):
Ik heb btw bij de python syntax alle " | " geëscaped omdat zonder escapen hij het ook al niet deed.
Maar in iedergeval, de error die ik hier uit krijg is de volgende:
Hier word ik alleen niet wijzer uit.
Hoe los ik dit op?
btw.
Het gaat om de volgende:
code:
1
| `tail -n \`wc -l $datafile | cut -d' ' -f 1 \` $datafile |cut -d',' -f $y |sort|uniq`; |
Dit is de syntax voor in perl. Deze voert dit uit, en wat hier uitkomt boeit ff niet (ben ik zelf ff vergeten namelijk
Maar goed, dit zou er in python lijkt me zo uit moeten zien:
code:
1
| args = 'tail -n \`wc -l ', var_datafile, ' \| cut -d\' \' -f 1 \` ', var_datafile, ' \|cut -d -f ', y, '\|sort|uniq' |
Om dit vervolgens uit te voeren moet (dacht ik) dit gedaan worden (na wat gezoek op internet):
code:
1
| commands.getoutput(args) |
Ik heb btw bij de python syntax alle " | " geëscaped omdat zonder escapen hij het ook al niet deed.
Maar in iedergeval, de error die ik hier uit krijg is de volgende:
code:
1
2
3
4
5
| File "/usr/lib/python2.3/commands.py", line 44, in getoutput
return getstatusoutput(cmd)[1]
File "/usr/lib/python2.3/commands.py", line 53, in getstatusoutput
pipe = os.popen('{ ' + cmd + '; } 2>&1', 'r')
TypeError: cannot concatenate 'str' and 'tuple' objects |
Hier word ik alleen niet wijzer uit.
Hoe los ik dit op?
btw.
code:
werkt wel gewoon.
1
| commands.getoutput('ls -a') |