最初に新しいファイルを作成し(存在しない場合)、次にci(新しく作成されたファイルで)を実行して、最初のリビジョン番号でrcsファイルを作成するpythonスクリプトを実行しようとしています。しかし、スクリプトを実行すると、説明とピリオド「.」で終わるように求められます。この部分をデフォルトの記述で自動化し、ユーザーの入力なしで rcs ファイルを作成したいと考えています。どんな助けでも大歓迎です。以下は私のコードです:
import os
import subprocesss
if os.path.isfile(location):
print "File already exists"
else:
f = open(location,'a')
subprocess.call(["ci", "-u", location])
f.close()
print "new file has been created"
これを試してみましたが、次のエラーが表示されます。
OS のインポート
サブプロセスのインポート
os.path.isfile(場所) の場合:
print "File already exists"
そうしないと:
f = open(location,'a')
cmd = "ci -u "+location
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True)
stdout_data = p.communicate(input='change\n.')[0]
f.close()
print "new file has been created"
トレースバック (最新の呼び出しが最後): ファイル "testshell.py"、15 行目、p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True) ファイル "/usr/local/ pythonbrew/pythons/Python-2.7/lib/python2.7/subprocess.py"、672 行目、init errread、errwrite 内) ファイル "/usr/local/pythonbrew/pythons/Python-2.7/lib/python2.7/subprocess .py"、1201 行目、_execute_child で child_exception OSError を発生させます: [Errno 2] そのようなファイルまたはディレクトリはありません