という名前のファイルを取得できますmyFile.txt
。その内容は次のとおりです。
file '/home/debian/1.flv'
file '/home/debian/2.flv'
file '/home/debian/3.flv'
file '/home/debian/4.flv'
file '/home/debian/5.flv'
今、私はそれをPythonでラップしたい
os.system("seq --format="file '/home/debian/%G.flv'" 5 > myFile.txt" )
File "<stdin>", line 1
os.system("seq --format="file '/home/debian/%G.flv'" 5 > myFile.txt" )
^
SyntaxError: invalid syntax
Pythonでラップする方法は?
Python (kvivek) でファイルを作成する方法を理解しています
Python で複雑なシェル コマンドを使用する方法を理解することが私の目標
です。行数が変数の場合は?
まだ問題があります
@Torxed エスケープ文字の方法
>>> i=7 >>> os.system("seq --format=\"file '/home/debian/%G.flv'\" %d > myFile.txt" %i ) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: float argument required, not str
@ganachoco の三重引用符の方法
>>> os.system('''seq --format="file '/home/debian/%G.flv'" %d > myFile.txt" %i''') sh: 1: Syntax error: Unterminated quoted string
考慮すべきステータスが 2 つあります。ステータス 1: 変数はシェルにあります。実行できます (次の 2 つのシェル コマンドを確認しました)。
root@debian:/home/debian# i=7
root@debian:/home/debian# seq --format="file '/home/debian/%G.flv'" $i > myFile.txt
os.system を使用して Python でラップする方法は?
>>> os.system('i=7')
0
>>> os.system("seq --format=\"file '/home/debian/%G.flv'\" $i > myFile.txt")
seq: missing operand
Try `seq --help' for more information.
256
変数は Python にあります。シェル コマンドを呼び出して、変数を Python からシェルに入れたいのですが、どうすればよいですか?
>>> i=7 #in python prompt
>>> os.system("seq --format=\"file '/home/debian/%G.flv'\" `here i want to get value from python prompt` > myFile.txt")