質問編集履歴
7
文法修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -74,7 +74,6 @@
|
|
|
74
74
|
# 追記
|
|
75
75
|
|
|
76
76
|
ドキュメントには下記のように書かれてました。
|
|
77
|
-
フォルダ名またはファイル名に半角スペースが入っていた場合も、shell=TrueでできたのでわざわざFalseで使う場面が想像できませんでした。
|
|
78
77
|
|
|
79
78
|
[subprocess --- サブプロセス管理¶](https://docs.python.org/ja/3/library/subprocess.html)
|
|
80
79
|
|
6
文法修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
# 追記
|
|
75
75
|
|
|
76
76
|
ドキュメントには下記のように書かれてました。
|
|
77
|
-
ファイル名にスペースが入っていた場合も、shell=TrueでできたのでわざわざFalseで使う場面が想像できませんでした。
|
|
77
|
+
フォルダ名またはファイル名に半角スペースが入っていた場合も、shell=TrueでできたのでわざわざFalseで使う場面が想像できませんでした。
|
|
78
78
|
|
|
79
79
|
[subprocess --- サブプロセス管理¶](https://docs.python.org/ja/3/library/subprocess.html)
|
|
80
80
|
|
5
文法修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
# 追記
|
|
75
75
|
|
|
76
76
|
ドキュメントには下記のように書かれてました。
|
|
77
|
-
|
|
77
|
+
ファイル名にスペースが入っていた場合も、shell=TrueでできたのでわざわざFalseで使う場面が想像できませんでした。
|
|
78
78
|
|
|
79
79
|
[subprocess --- サブプロセス管理¶](https://docs.python.org/ja/3/library/subprocess.html)
|
|
80
80
|
|
4
追記
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -69,4 +69,13 @@
|
|
|
69
69
|
となります。
|
|
70
70
|
|
|
71
71
|
shell=Falseを指定した場合のメリットってありますか?
|
|
72
|
-
普通に使う分にはshell=Trueにすればいいような気がしたのですが、shell=Falseとして実際に使う場面が想像できなかったので。
|
|
72
|
+
普通に使う分にはshell=Trueにすればいいような気がしたのですが、shell=Falseとして実際に使う場面が想像できなかったので。
|
|
73
|
+
|
|
74
|
+
# 追記
|
|
75
|
+
|
|
76
|
+
ドキュメントには下記のように書かれてました。
|
|
77
|
+
これもshell=Trueで対応できそうな気がしますが。
|
|
78
|
+
|
|
79
|
+
[subprocess --- サブプロセス管理¶](https://docs.python.org/ja/3/library/subprocess.html)
|
|
80
|
+
|
|
81
|
+
> args はすべての呼び出しに必要で、文字列あるいはプログラム引数のシーケンスでなければなりません。一般に、引数のシーケンスを渡す方が望ましいです。なぜなら、モジュールが必要な引数のエスケープやクオート (例えばファイル名中のスペースを許すこと) の面倒を見ることができるためです。単一の文字列を渡す場合、shell は True でなければなりません (以下を参照)。もしくは、その文字列は引数を指定せずに実行される単なるプログラムの名前でなければなりません。
|
3
文法修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -60,13 +60,13 @@
|
|
|
60
60
|
と出てきます。
|
|
61
61
|
|
|
62
62
|
Linuxだとコマンド文をスペース区切りのリストで引数に指定してあげればいいようです。
|
|
63
|
-
"ls -a" というコマンド
|
|
63
|
+
例えば、"ls -a" というコマンドを実行するときは、
|
|
64
64
|
```
|
|
65
65
|
import subprocess as sp
|
|
66
66
|
ret = sp.run(["ls", "-a"], stdout=sp.PIPE)
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
となります。
|
|
70
70
|
|
|
71
71
|
shell=Falseを指定した場合のメリットってありますか?
|
|
72
72
|
普通に使う分にはshell=Trueにすればいいような気がしたのですが、shell=Falseとして実際に使う場面が想像できなかったので。
|
2
説明の例追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -60,6 +60,13 @@
|
|
|
60
60
|
と出てきます。
|
|
61
61
|
|
|
62
62
|
Linuxだとコマンド文をスペース区切りのリストで引数に指定してあげればいいようです。
|
|
63
|
+
"ls -a" というコマンドの場合は、
|
|
64
|
+
```
|
|
65
|
+
import subprocess as sp
|
|
66
|
+
ret = sp.run(["ls", "-a"], stdout=sp.PIPE)
|
|
67
|
+
```
|
|
63
68
|
|
|
69
|
+
です。
|
|
70
|
+
|
|
64
71
|
shell=Falseを指定した場合のメリットってありますか?
|
|
65
72
|
普通に使う分にはshell=Trueにすればいいような気がしたのですが、shell=Falseとして実際に使う場面が想像できなかったので。
|
1
文法修正、ソースコードコメント追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
```Python
|
|
4
4
|
import subprocess as sp
|
|
5
5
|
|
|
6
|
-
cmd = "dir"
|
|
6
|
+
cmd = "dir" # Linuxの場合は "ls"
|
|
7
7
|
ret = sp.run(cmd, stdout=sp.PIPE, shell=True)
|
|
8
8
|
|
|
9
|
-
print(ret.stdout.decode("cp932"))
|
|
9
|
+
print(ret.stdout.decode("cp932")) # Linuxの場合は "utf-8" または 指定なし
|
|
10
10
|
```
|
|
11
11
|
|
|
12
12
|
を実行すると
|
|
@@ -59,6 +59,7 @@
|
|
|
59
59
|
|
|
60
60
|
と出てきます。
|
|
61
61
|
|
|
62
|
-
Linuxだとコマンド文をスペース区切りのリストで引数に指定してあげればいいようです
|
|
62
|
+
Linuxだとコマンド文をスペース区切りのリストで引数に指定してあげればいいようです。
|
|
63
63
|
|
|
64
|
+
shell=Falseを指定した場合のメリットってありますか?
|
|
64
65
|
普通に使う分にはshell=Trueにすればいいような気がしたのですが、shell=Falseとして実際に使う場面が想像できなかったので。
|