回答編集履歴

3

微修正

2023/09/28 16:29

投稿

otn
otn

スコア84788

test CHANGED
@@ -1,7 +1,7 @@
1
1
  > Git for Windowsを使用しているからでしょうか?
2
2
  ということでしょう。
3
3
 
4
- Bashが使っていると思われるUnix系の実行プログラム起動の関数である`execve`をWindowsで使ってみると`.exe`ファイルだけでなく`.bat`ファイルも起動できます。
4
+ Bashが使っていると思われる実行プログラム起動の(Unix系の)関数である`execve`をWindowsで使ってみると`.exe`ファイルだけでなく`.bat`ファイルも起動できます。
5
5
  その場合は、内部的に`cmd.exe /c foo.bat ~~`のように実行されます。これはWindowsの機能。
6
6
 
7
7
  他にも、Windows用のBashのコマンド起動処理は、

2

補足

2023/09/28 16:24

投稿

otn
otn

スコア84788

test CHANGED
@@ -1,5 +1,8 @@
1
+ > Git for Windowsを使用しているからでしょうか?
2
+ ということでしょう。
3
+
1
- Unix系の実行プログラム起動の関数である`execve`をWindowsで使ってみると`.exe`ファイルだけでなく`.bat`ファイルも起動できます。
4
+ Bashが使っていると思われるUnix系の実行プログラム起動の関数である`execve`をWindowsで使ってみると`.exe`ファイルだけでなく`.bat`ファイルも起動できます。
2
- その場合は、`cmd.exe /c foo.bat ~~`のように実行されます。これはWindowsの機能。
5
+ その場合は、内部的に`cmd.exe /c foo.bat ~~`のように実行されます。これはWindowsの機能。
3
6
 
4
7
  他にも、Windows用のBashのコマンド起動処理は、
5
8
  ・PATHからの探索の際に、ファイル名の大文字小文字を区別しない

1

間違いの訂正

2023/09/28 16:22

投稿

otn
otn

スコア84788

test CHANGED
@@ -1,6 +1,8 @@
1
+ Unix系の実行プログラム起動の関数である`execve`をWindowsで使ってみると`.exe`ファイルだけでなく`.bat`ファイルも起動できます。
2
+ その場合は、`cmd.exe /c foo.bat ~~`のように実行されます。これはWindowsの機能。
3
+
1
- どこかドキュメントはあると思いますが、Windows用のBashのコマンド起動処理は、
4
+ 、Windows用のBashのコマンド起動処理は、
2
5
  ・PATHからの探索の際に、ファイル名の大文字小文字を区別しない
3
6
  ・PATHからの探索の際に、見つからない場合は、コマンド名に`.exe`を付加したファイル名も探す
4
- という明らかにWindows用の機能があるので、おそらく、
5
- ・拡張子`.bat` `.cmd`先頭に`cmd.exeフルパス /c `を付加
7
+ という点Unix/Linuxと異りますが前者はWindows機能で、後者はおそらくbashの機能だと思いま
6
- という機能もあると言うことだと思います。
8
+