web-dev-qa-db-ja.com

Windows:OS Xのターミナル「&」に相当

Windows 7で、OS Xのターミナルで_&_文字の動作をエミュレートする方法はありますか?
複数のWgetインスタンスを同時に実行しようとしています:長い文字列を作成するPythonスクリプトがあるため、OSXでは問題なくこれを実行できます。 Wgetの各インスタンスは&で区切られています。os.system()で実行すると、すべてうまくいきます。
ただし、Windowsではこれは機能せず、インスタンスは順番に実行されます。それは私が望むものではありません。
私はすべての提案を受け入れます:_cmd.exe_ハック、シェルポート、その他のPython、新しいウィンドウシェルウィンドウが作成されている限り、何でも。前もって感謝します!

編集:ファイルは実際にはこのメソッド を使用してダウンロードされますが、Windowsでは_cmd.exe_は実行を突然終了し、ユーザーが新しいコマンドを受け入れることができるようにします。これを回避し、すべてのWgetインスタンスのダウンロードが完了するまでコンソールを「ハング」させ続ける方法はありますか?

編集2:使用しているコードを投稿します。

_for track in album.tracks():
    tracknum = track["track_num"]
    tracktit = track["title"]
    URL = track["file"]["mp3-128"]
    filename = str(tracknum) + " - " + tracktit + ".mp3"
_

現在、OS Xでは、このコードは素晴らしい働きをします。

_    execstr += 'bandcamp-support' +os.sep+ 'wget --tries=0 -O"{}" "{}" -q & '.format(filename,URL)
    os.system('bandcamp-support' +os.sep+ 'wget' execstr[:-3])
_

代わりに、Windowsでは、これはOSXで経験する動作を複製しません。

_    os.system('start /B bandcamp-support' +os.sep+ 'wget --tries=0 -q -O"{}" "{}"'.format(filename,URL))
_
3
Jetlef

* NIXシェルのファンなら、Cygwinをインストールして、 Cygwin を使用してこれらすべてのシェルとツールにアクセスできます。 Win-Bash を使用してBashシェルをインストールすることもできます。ただし、Cygwinには多くの機能があるため、Cygwinを使用したほうがよいと思います。

1
Keltari