【Pythonでシェルコマンドを実行】subprocessモジュールの解説!WindowsでもMacでも使える!〜 プログラミング初心者向け 〜

Поделиться
HTML-код
  • Опубликовано: 12 дек 2024

Комментарии • 27

  • @kurukuruteh
    @kurukuruteh 2 года назад +1

    先日 subprocess 使ったばかりなのでめちゃめちゃタイムリーな内容でした

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      ご視聴いただきありがとうございます😊
      ちょうど良いタイミングで出せて良かったです!!

  • @masafumi_papa
    @masafumi_papa 2 года назад +1

    いつも楽しみに勉強させてもらってます🐱
    配布したEXEファイルを自動更新するのにsubprocessを使おうかと思ってたのでタイムリーでした😺

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +2

      ご視聴いただきありがとうございます🐱
      コマンドからの方が楽に書ける処理の場合は、subprocess便利ですね!!

  • @yosiakifukuhara1255
    @yosiakifukuhara1255 Год назад

    勉強になりました.ありがとう.

  • @淀川謙次
    @淀川謙次 14 дней назад

    Pythonで書くのが困難な、Linuxのファイル・ディレクトリの権限設定、シェルの起動とか追加していただくと、ありがたいです。 Pythonを書くとき、いつも参考にしております。

  • @rakkaalhazimi3672
    @rakkaalhazimi3672 2 года назад +1

    I understand what do you mean despite not knowing the language 😆👍🏼. Learned a lot about subprocess.

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      Thank you for watching!! I hope this video helped.

  • @yu_88ktym
    @yu_88ktym 2 года назад

    osとshutilを使って頑張ってzip圧縮してましたが、こっちの方が楽だったかもなぁと感じながらみてました笑
    参考になります

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      色々な書き方を知っているとその中から最適なものを選べますね!!
      ぜひ、使えるシーンで使ってみてください😊

  • @miyuki457
    @miyuki457 2 года назад

    ありがとうございます!有益でした!

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      ご視聴ありがとうございます!
      使えるシーンはやや限られていますが、ぜひ機会があれば使ってみてください😊

    • @miyuki457
      @miyuki457 2 года назад

      @@pythonvtuber9917
      はい!>~

  • @Uni-Hoya
    @Uni-Hoya 2 года назад +1

    自分が作るプログラムもsubprocess連携がしやすいように気を付けておくと、思わぬところでsubprocess連携してもらえる機会が出てくるので、実行可能形式で配る場合には意識したいですね。
    エラー発生時も終了コードが0になってしまってたり、重要な実行結果を表示している文字列が正規表現で抜き取りにくくなっていたり、コマンド引数に対応していなかったり、みたいなことになってると残念感が……

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      コメントありがとうございます😊
      確かに、他から利用しやすく作っておくのは大切ですね!!色々気をつけるべき点を挙げてもらってありがたいです!

  • @hajimenagao8806
    @hajimenagao8806 2 года назад

    pythonのsubprocessで他のプログラミング言語をターミナル実行、
    例えばJavascriptファイルを pythonから実行してコンソール出力を受け取れる、
    htmlファイルをpythonコードで作成し指定したブラウザで表示できる、
    C言語ファイルをコンパイルしてターミナル実行できる、
    pythonでメインのコード書いて他の言語と連携すれば色々とおもしろいアプリ作れそうと妄想膨らみます☺️
    しかし残念ながら他の言語はまだまだコード書けません😅

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад +1

      コメントありがとうございます!
      subprocess、色々なパターンで使えると思うので、ぜひ機会があれば使ってみてください😊

    • @hajimenagao8806
      @hajimenagao8806 2 года назад

      はい、いつも基本を振り返る時はサプーさんの動画がとても参考になります。また次の動画も楽しみにしてます(^^)

  • @kii6865
    @kii6865 2 года назад

    いつも楽しく見させていただいています
    Windows環境ではリストの形はエラーになるとありましたが
    私の環境では下記ようなリストの形で実行してもエラーになりませんでした
    > subprocess.run(['ping', 'localhost'])
    実行するコマンドによってはエラーになることがあるのでしょうか・・・

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      情報ありがとうございます!
      ドキュメント内に「Windowsの場合は...」みたいな記載があった記憶があるのですが、今探したところなぜか見つからず...😵 ちょっと明確なことは言えないのですが、うまくいくケースもあるということですね!情報ありがとうございます!

    • @kii6865
      @kii6865 2 года назад

      ご返信ありがとうございます。仕様に変更などがあったのかもしれないですね。
      これからも動画を楽しみにしています!
      もし機会がありましたら、自作モジュールのパッケージ化を見てみたいです。。

  • @上杉治己-u4j
    @上杉治己-u4j Год назад

    他のプロセスの削除がどうしても、うまくいきません。何か、参考pyファイルがありませんか????

  • @graphiteblack
    @graphiteblack Год назад

    powershellを使う方法をvs codeでデバッグするとprintの結果が出てこない。

  • @るら-v4r
    @るら-v4r 2 года назад

    普段
    シェルスクリプト ターゲットテキストファイル.txt > 出来上がりファイル.txt
    というコマンドを実行しているのですが、どのように書けばpythonから動きますか?

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      subprocess.runでそのまま書いても実行できないですかね?

    • @るら-v4r
      @るら-v4r 2 года назад

      @@pythonvtuber9917
      subprocess.run("sh shellscript", "target.txt", "converted.txt"で試しましたができませんでした、エラー内容はbufsize must be an integerです

    • @pythonvtuber9917
      @pythonvtuber9917  2 года назад

      実行結果をファイルに書き出したいということでしょうか?以下のやり方は試してみましたかね?
      qiita.com/tanabe13f/items/8d5e4e5350d217dec8f5#%E5%87%BA%E5%8A%9B%E3%82%92%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AB%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%99