Subprocess command with pipes exception

オープン
#979 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
jupyter-notebook, python
領域
backend

調査の方向性

Windows 上の VS Code Jupyter notebook で、提供されている check_output の例を実行し、通常の Python ターミナルでの結果と比較します。pipe 周辺の subprocess の動作を追跡し、コマンドが FileNotFoundError なしで完了して出力を表示することを確認します。

索引モデルが issue の本文から書いたものです。

説明

When running a system command in ipyterminal exceptions being thrown and no output being displayed. However, when running in a normal python terminal, there are no issues. Running python 3.8.3. Running ipyterminal in vs code jupyter notebook.

from subprocess import run, PIPE, Popen, check_output
cmd = "ls | grep test"
output = check_output(cmd)
print(output.decode('utf-8'))

Error in ipyterminal

FileNotFoundError Traceback (most recent call last)
C:\Temp/ipykernel_13876/3338296859.py in
1 from subprocess import run, PIPE, Popen, check_output
2 cmd = "ls | grep test"
----> 3 output = check_output(cmd)
4 #print(output.stdout.decode('utf-8'))

c:\Users\S279376\Miniconda3\envs\analytics\lib\subprocess.py in check_output(timeout, *popenargs, **kwargs)
413 kwargs['input'] = empty
414
--> 415 return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
416 **kwargs).stdout
417

c:\Users\S279376\Miniconda3\envs\analytics\lib\subprocess.py in run(input, capture_output, timeout, check, *popenargs, **kwargs)
491 kwargs['stderr'] = PIPE
492
--> 493 with Popen(*popenargs, **kwargs) as process:
494 try:
495 stdout, stderr = process.communicate(input, timeout=timeout)

c:\Users\S279376\Miniconda3\envs\analytics\lib\subprocess.py in init(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, encoding, errors, text)
856 encoding=encoding, errors=errors)
857
...
-> 1311 hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
1312 # no special security
1313 None, None,

FileNotFoundError: [WinError 2] The system cannot find the file specified

主要言語
Python
スター
734
フォーク
411
平均マージ
1日 2時間
マージ済み PR(30日)
9

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

ipython/ipykernel のほかの issue

ipython/ipykernel の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。