kose-yusuke / minishell

2 stars 0 forks source link

ディレクトリを実行しようとした時に、適切なエラーメッセージが表示されない #74

Closed skitheom closed 1 week ago

skitheom commented 2 weeks ago

ディレクトリを実行しようとした時に、適切なエラーメッセージが表示されない

概要

ディレクトリをコマンドとして実行しようとする際、is a directoryのエラーメッセージが表示されるべきところ、誤ったメッセージが表示されるか、エラーメッセージが表示されない。

bash:

bash-3.2$ $HOME
bash: /Users/north: is a directory
bash-3.2$ echo $USER | $HOME
bash: /Users/north: is a directory
bash-3.2$

minishell:

minishell$ $HOME
Command not found: /Users/north
minishell$ echo $USER | $HOME
Command not found: /Users/north
minishell$
skitheom commented 1 week ago

note: exit statusも修正する

bash:

bash-3.2$ $HOME
bash: /Users/north: is a directory
bash-3.2$ echo $?
126
bash-3.2$ echo $USER | $HOME
bash: /Users/north: is a directory
bash-3.2$ echo $?
126
bash-3.2$

minishell:

minishell$ $HOME
minishell: /Users/north: command not found
minishell$ echo $?
127
minishell$ echo $USER | $HOME
minishell: /Users/north: command not found
minishell$ echo $?
127
minishell$
skitheom commented 1 week ago

追加で未対応のケースを見つけています。

未対応の事象:

bash

bash-3.2$ < ""
bash: : No such file or directory

minishell

minishell$ < ""
minishell: No such file or directoryminishell$