resolutions qq pbm dans unitests et dans tests

This commit is contained in:
hugogogo
2021-12-18 12:29:31 +01:00
parent fe92f88d31
commit 918efaf73c
9 changed files with 1015 additions and 793 deletions

View File

@@ -1,39 +1,43 @@
1. redirection & quotes expansion
```
bash$ echo "hello" > "file"
bash$ ls
file
bash$
```
**summary**
```
minishell$ echo "hello" > "file"
minishell$ ls
'"file"'
minishell$
```
2. redirection & open
# exit status
6 / 6
# redirections
50 / 50
# builtins env
! 37 / 47
# heredocs
1 / 1
# expansions
248 / 248
# expansions var
! 110 / 120
# pipes
40 / 40
# builtins
40 / 40
# else
29 / 29
# total : 276 / 366
`prompt$ > newfile`
create file `newfile` in bash, but not in minishell
3. redirection & open
ok `prompt$ echo "hello" > $not_a_variable`
ok does'nt create a file in bash, but does in minishell
**details**
4. redirection & variables expansion
# --------------------------------
# builtins env
```
export NEWVAR="newfile"
echo hello > $NEWVAR
```
create file "newfile" in bash, but a file named "'$NEWVAR'" in minishell
1. `export` sans argument agit differemment
from man : "if no names are supplied [...] a list of exported names is displayed."
2. `export ""` ! segfault !
3. `export/unset PATH` agit differemment
5. redireciton & pipes
`ls | < not_a_file cat`
gives an error about "not_a_file" and stop in bash, but in minishell it continues forever
(`< not_a_file cat` works fine in both bash and minishell)
# --------------------------------
# expansions var
1. `echo $"USER"` quotes inside $
2. `$number` doesn't expand in minishell

View File

@@ -1,11 +0,0 @@
echo bonjour ; |
echo bonjour |;
;
echo coucou | ;
echo ;;
echo bonjour \; ls

View File

@@ -1,10 +1,10 @@
env
export
#export
env
env
export
#export
env
export BLOU=
@@ -18,11 +18,6 @@ env
unset blablabla
env
export ""
env
unset ""
env
export var
export var=test
@@ -37,30 +32,26 @@ export "HI= hi"
export "HI =hi"
export
env
env
export
export a="\\"
#export
export b='\\'
export c="\b"
export
#export
env
export a=hijdoehet
export
#export
env
export test=working
export
#export
env
export test1
env
export
#export
env
export test1=
@@ -85,7 +76,7 @@ env
echo
export test1
export
#export
echo
env
@@ -164,3 +155,8 @@ export TEST1=test1
export TEST2=test2
unset TEST1 TEST2
env
#export ""
env
unset ""
env

View File

@@ -0,0 +1,499 @@
echo '\'
echo '\\'
echo "\n \n \n"
echo hi";" hihi
echo hi " ; " hihi
echo "\s"
echo "ls -la <a | grep x > b"
echo ok "" ok
echo ok "" "" "" "" "" "" "" "" "" ok
echo "exit"
echo "exit\n"
cat < ../
echo ";;;;;"
echo “./hello”.
echo ./hello
echo ello
echo ' \n this is the; "first line"'
echo "and right here;;; 'We have the second'"
echo and" a fe"'w 'here'; with some slash and quotes .' '\'
echo '\\'
echo "\poep"
echo"
"
export a="\\"
export b='\\'
export c="\b"
echo > ilovewords.txt count me
wc ilovewords.txt
awk '{ print }' /etc/passwd
echo 'how are you'
"echo" hallo daar
echo "hallo daar"
"ls"
hallo ma\ran siemons Hij ziet de \ niet als escape, print gewoon \
echo 'ma\'
echo "\poep"
echo hallo""
123"456
123"456""
echo "\poep"
echo 'poep''poep2'"maran"'ellende'END
echo poeppoep2maranellendeEND
echo 'poep2'"maran"'ellende'
echo poep2maranellende
echo hallo
echo echt bash
echo halloUSER
echo halloPOEP
echo halloUSER
echo "\hallo"
echo "123\!456"
echo "1234"
echo "12\34"
echo "1\a234"
echo "\1234"
echo '1234\\'
echo '1234'
echo '12\34'
echo '1234\'
echo '1\a234'
echo '\1234'
echo '1234\\'
echo '1234\\'
echo "\!"
echo "\#"
echo "\%"
echo "\&"
echo "\'"
echo "\("
echo "\)"
echo "\*"
echo "\+"
echo "\,"
echo "\-"
echo "\."
echo "\/"
echo "\0"
echo "\1"
echo "\2"
echo "\3"
echo "\4"
echo "\5"
echo "\6"
echo "\7"
echo "\8"
echo "\9"
echo "\:"
echo "\<"
echo "\="
echo "\>"
echo "\?"
echo "\@"
echo "\A"
echo "\B"
echo "\C"
echo "\D"
echo "\E"
echo "\F"
echo "\G"
echo "\H"
echo "\I"
echo "\J"
echo "\K"
echo "\L"
echo "\M"
echo "\N"
echo "\O"
echo "\P"
echo "\Q"
echo "\R"
echo "\S"
echo "\T"
echo "\U"
echo "\V"
echo "\W"
echo "\X"
echo "\Y"
echo "\Z"
echo "\["
echo "\]"
echo "\^"
echo "\_"
echo "\a"
echo "\b"
echo "\c"
echo "\d"
echo "\e"
echo "\f"
echo "\g"
echo "\h"
echo "\i"
echo "\j"
echo "\k"
echo "\l"
echo "\m"
echo "\n"
echo "\o"
echo "\p"
echo "\q"
echo "\r"
echo "\s"
echo "\t"
echo "\u"
echo "\v"
echo "\w"
echo "\x"
echo "\y"
echo "\z"
echo "\{"
echo "\|"
echo "\}"
echo "\~"
echo '\!'
echo '\"'
echo '\#'
echo '\%'
echo '\&'
#echo '\''
echo '\('
echo '\)'
echo '\*'
echo '\+'
echo '\,'
echo '\-'
echo '\.'
echo '\/'
echo '\0'
echo '\1'
echo '\2'
echo '\3'
echo '\4'
echo '\5'
echo '\6'
echo '\7'
echo '\8'
echo '\9'
echo '\:'
echo '\<'
echo '\='
echo '\>'
echo '\?'
echo '\@'
echo '\A'
echo '\B'
echo '\C'
echo '\D'
echo '\E'
echo '\F'
echo '\G'
echo '\H'
echo '\I'
echo '\J'
echo '\K'
echo '\L'
echo '\M'
echo '\N'
echo '\O'
echo '\P'
echo '\Q'
echo '\R'
echo '\S'
echo '\T'
echo '\U'
echo '\V'
echo '\W'
echo '\X'
echo '\Y'
echo '\Z'
echo '\['
echo '\\'
echo '\]'
echo '\^'
echo '\_'
echo '\a'
echo '\b'
echo '\c'
echo '\d'
echo '\e'
echo '\f'
echo '\g'
echo '\h'
echo '\i'
echo '\j'
echo '\k'
echo '\l'
echo '\m'
echo '\n'
echo '\o'
echo '\p'
echo '\q'
echo '\r'
echo '\s'
echo '\t'
echo '\u'
echo '\v'
echo '\w'
echo '\x'
echo '\y'
echo '\z'
echo '\{'
echo '\|'
echo '\}'
echo '\~'
echo '\;'
echo "\;"
echo '\>'
echo "\>"
echo '\<'
echo "\<"
echo '\|'
echo "\|"

View File

@@ -0,0 +1,273 @@
# ERROR :
# quotes inside $
echo $"USER"
echo $"etet"
echo $"hallo"
echo /$"123$USER"
echo hallo$"USER"
echo hallo$"POEP"
echo hallo$'USER'
# "$number"
echo "$222"
echo "hallo$USER***$USER$2$"
echo "$53535"
# OK :
mkdir directory1
export POEP=directory1
cd $POEP $MEERPOEP ..
pwd
mkdir directory1
mkdir directory1/directory2
export POEP=directory1
export MEERPOEP=directory2
cd $POEP $MEERPOEP ..
pwd
export vat=at
c$var Makefile
$blablabla
$LESS$VAR
echo "$HOME"
echo '$HOME'
echo "hallo$"
hallo$
export ECHO="echo"
$ECHO "hello"
export A=p
export B=w
$A"$B"d
"$A"'$B'd
export A="s -la"
l$A
export OK="ok ok"
echo $OK
$
echo $POEP hallo
echo $/
echo $
echo $PWD
export LS="ls -la"
$LS
echo $PWD
echo $HOME
echo "$PWD"
echo '$PWD'
echo "$HOME"
cd $IETSONBESTAANDS
cd $GEK ..
cd $NOTHING $MORENOTHING ..
echo '$PWD'
echo $USER""
echo $USER_
echo 123$USER----
echo 123$USER----$
echo abc$USERdef
echo abc$USER123
echo abc$POEPdef
echo $USER "$USER" '$USER'
export TEST_$USER=hallo$LOGNAME
echo $POEP
echo $POEP $MEERPOEP
echo hallo $POEP
echo $POEP hallo
IETSONBESTAANDS=".."
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
pwd
echo 'hallo$USER'
echo hallo$USER
echo 'hallo\$USER'
echo '\$?'
echo '$USER'
echo '\$USER'
echo '"\$USER"'
echo "hoi$USERmaran"
echo "$USER"
export TWO=" two "
echo "one "$TWO" three"
echo "one"$TWO" three"
echo "one"$TWO"three"
echo "one" $TWO "three"
export TWO="two"
echo "one"$TWO"three"
echo "one "$TWO"three"
echo "one "$TWO" three"
echo "one"$TWO"three"
echo "one "$TWO"three"
echo "one "$TWO" three"
echo "one" $TWO "three"
echo "hallo$"
echo hallo$
echo '$USER'$USER
echo $USERmaran
echo hallo"1234"maran"$USER"'/$USER'"/$USER"'poep''poep2'"maran"'ellende'END
echo hallo1234maranmaran/$USER/maranpoeppoep2maranellendeEND
echo "$USER"'/$USER'
echo maran/$USER
echo 123"hallo$"456
echo $_1234
echo $USERhallo
echo $hallo"poep"
echo $a5aap
echo $_poep
echo hallo$abc
echo $halllo###
echo $USER9582309582529
echo $
echo $USER
echo '$USER'
echo "$USER"
echo 123$USER----
echo 123$USER----$
echo abc$USERdef
echo abc$USER123
echo abc$POEPdef
echo $%%%%jlkjtwejt
echo %%$
echo "$_poep"
echo "$a5aap"
echo "$halllo###"
echo "$USER9582309582529"
echo "$"
echo hallo"$"abc
echo hallo"$POEP"abc
echo hallo"$USER"abc
echo "$USER"
echo "$USER'"
echo "$USER_"
echo "abc$USERdef"
echo "abc$USER123"
echo "abc$POEPdef"
echo "$%%%%jlkjtwejt"
echo "%%$"
echo $hallo
echo $hallo"poep"
echo "hallo$USER"
echo "hallo$USER"
echo hallo$abc
echo hallo$abc
echo$rewtwet
echo '\$'

View File

@@ -1,633 +0,0 @@
export vat=at
c$var Makefile
$blablabla
$LESS$VAR
echo '\'
echo '\\'
echo "\"
echo "\n \n \n"
echo "\n \\n \\\n"
echo hi";" hihi
echo hi " ; " hihi
echo "\s"
echo "\\s"
echo \>
echo "$HOME"
echo '$HOME'
echo \$HOME
export A="s -la"
l$A
export A=p
export B=w
$A"$B"d
"$A"'$B'd
echo "ls -la <a | grep x > b"
echo ok "" ok
echo ok "" "" "" "" "" "" "" "" "" ok
export OK="ok ok"
echo $OK
$
echo "exit"
echo "exit\n"
cat < ../
echo ";;;;;"
echo 00\\\'pp
echo 00\\\\\'pp
echo 00\\\\'pp'
echo “./hello”.
echo ./hello
echo ello
echo \n ' \n this is the; "first line"'
echo "and right here;;; 'We have the second'"
echo and" a fe"'w 'here'; with some slash and quotes .' '\'
echo '\\'
echo "\\"
echo "\""
echo \'
echo \" "\\" "\"" \\ \' \"
echo /$"123$USER"
echo $POEP hallo
echo "hallo$"
echo "\poep"
echo $/
echo $
echo "123\"456"
echo $PWD
echo \"test\"
echo"
"
hallo$
export a="\\"
export b='\\'
export c="\b"
export LS="ls -la"
$LS
echo $PWD
echo $HOME
echo "$PWD"
echo '$PWD'
echo "$HOME"
cd $IETSONBESTAANDS
cd $GEK ..
cd $NOTHING $MORENOTHING ..
echo > ilovewords.txt count me
wc ilovewords.txt
awk '{ print }' /etc/passwd
echo 'how are you'
echo '$PWD'
"echo" hallo daar
echo "hallo daar"
echo $USER""
echo $USER"
echo $"USER"
echo "$USER
echo $USER_
echo 123$USER----
echo 123$USER----$
echo abc$USERdef
echo abc$USER123
echo abc$POEPdef
echo $USER "$USER" '$USER'
export TEST_$USER=hallo$LOGNAME
echo $POEP
echo $POEP $MEERPOEP
echo hallo $POEP
echo $POEP hallo
IETSONBESTAANDS=".."
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
cd $IETSONBESTAANDS
pwd
mkdir directory1
POEP=directory1
cd $POEP $MEERPOEP ..
pwd
mkdir directory1
mkdir directory1/directory2
POEP=directory1
MEERPOEP=directory2
cd $POEP $MEERPOEP ..
pwd
"ls"
echo hallo 'ma\"ran' siemons
hallo ma\"ran siemons
echo hallo 'ma\'ran' siemons
echo hallo 'ma'ran' siemons
echo hallo 'ma\'ran'' siemons
hallo ma\ran siemons Hij ziet de \ niet als escape, print gewoon \
echo 'ma\' Hij ziet de \ niet als escape, print gewoon \
echo 'ma\' Hij ziet de \ niet als escape, print gewoon \
echo 'ma\'
echo ma\
echo 'hallo$USER'
echo hallo$USER
echo 'hallo\$USER'
echo hallo\$USER
echo '\$?'
echo \$?
echo '$USER'
$USER
echo '\$USER'
echo \$USER
echo '"\$USER"'
echo "\$USER"
echo "hallo"maran"
echp hallo"
export ECHO="echo"
$ECHO "hello"
echo "\poep"
echo "poep\""
echo poep"
echo poep"""
echo "poep\'"
echo """
poep\'
echo "poep\"
echo "hallo\"\poep"
hallo"\poep
echo " " "
echo hallo""
hallo
echo "hoi$USERmaran"
echo "$USER"
maran
export TWO=" two "
echo "one "$TWO" three"
echo "one"$TWO" three"
echo "one"$TWO"three"
echo "one" $TWO "three"
export TWO="two"
echo "one"$TWO"three"
echo "one "$TWO"three"
echo "one "$TWO" three"
echo "one"$TWO"three"
echo "one "$TWO"three"
echo "one "$TWO" three"
echo "one" $TWO "three"
echo "'\$USER'"
'$USER'
echo "\$USER"
$USER
echo "123\"456"
123"456
123"456""
echo "\poep"
echo \poep
echo "123\'456"
echo 123\'456
echo "hallo$"
echo hallo$
echo \"
echo "
echo """
echo \$?
echo '$USER'$USER
echo $USERmaran
echo '$USER'$USER\$USER/"$USER"
echo hallo"1234"maran"$USER"'/$USER'"/$USER"'poep''poep2'"maran"'ellende'END
echo hallo1234maranmaran/$USER/maranpoeppoep2maranellendeEND
echo "$USER"'/$USER'
echo maran/$USER
echo 'poep''poep2'"maran"'ellende'END
echo poeppoep2maranellendeEND
echo 'poep2'"maran"'ellende'
echo poep2maranellende
echo 123"hallo$"456
echo $_1234
echo hallo
echo echt bash
echo $USERhallo
echo $hallo"poep"
echo /$"123$USER"
echo $a5aap
echo $_poep
echo hallo$\abc
echo hallo$abc
echo hallo$\\abc
echo hallo$\abc
echo hallo$"USER"
echo halloUSER
echo hallo$"POEP"
echo halloPOEP
echo hallo$'USER'
echo hallo$'USER' '
echo $USER'
echo halloUSER
echo $halllo###
echo $USER9582309582529
echo $
echo $USER
echo $USER'
echo $'
echo '$USER'
echo "$USER"
echo 123$USER----
echo 123$USER----$
echo abc$USERdef
echo abc$USER123
echo abc$POEPdef
echo $%%%%jlkjtwejt
echo %%$
echo $"USERhallo"
echo "$222"
echo "hallo$USER***$USER$2$"
echo "$_poep"
echo "$a5aap"
echo "$halllo###"
echo "$USER9582309582529"
echo "$"
echo hallo"$"abc
echo hallo"$POEP"abc
echo hallo"$USER"abc
echo "$USER"
echo "$USER'"
echo "$USER_"
echo "abc$USERdef"
echo "abc$USER123"
echo "abc$POEPdef"
echo "$%%%%jlkjtwejt"
echo "%%$"
echo $"hallo"
echo $hallo
echo $hallo"poep"
echo "hallo\"\poep"
echo $"etet"
echo "$53535"
echo “$\hallo”
echo $"\hallo"
echo "\\hallo"
echo "hallo\\hoi"
echo "\\$USER"
echo "123\"456"
echo "hallo$USER"
echo "hallo$USER"
echo hallo$abc
echo hallo$abc
echo$rewtwet
echo "\hallo"
echo \hallo
echo "123\$456"
echo "123\\456"
echo "123\!456"
echo "1234"
echo "12\34"
echo "1234\"
echo \"1234"
echo "1\a234"
echo "\1234"
echo "1234\\"
echo '1234\\'
echo '1234'
echo '12\34'
echo '1234\'
echo \'1234'
echo '1\a234'
echo '\1234'
echo '1234\\'
echo '1234\\'
echo '
echo "\!"
echo "\""
echo "\#"
echo "\$"
echo "\%"
echo "\&"
echo "\'"
echo "\("
echo "\)"
echo "\*"
echo "\+"
echo "\,"
echo "\-"
echo "\."
echo "\/"
echo "\0"
echo "\1"
echo "\2"
echo "\3"
echo "\4"
echo "\5"
echo "\6"
echo "\7"
echo "\8"
echo "\9"
echo "\:"
echo "\<"
echo "\="
echo "\>"
echo "\?"
echo "\@"
echo "\A"
echo "\B"
echo "\C"
echo "\D"
echo "\E"
echo "\F"
echo "\G"
echo "\H"
echo "\I"
echo "\J"
echo "\K"
echo "\L"
echo "\M"
echo "\N"
echo "\O"
echo "\P"
echo "\Q"
echo "\R"
echo "\S"
echo "\T"
echo "\U"
echo "\V"
echo "\W"
echo "\X"
echo "\Y"
echo "\Z"
echo "\["
echo "\\"
echo "\]"
echo "\^"
echo "\_"
echo "\a"
echo "\b"
echo "\c"
echo "\d"
echo "\e"
echo "\f"
echo "\g"
echo "\h"
echo "\i"
echo "\j"
echo "\k"
echo "\l"
echo "\m"
echo "\n"
echo "\o"
echo "\p"
echo "\q"
echo "\r"
echo "\s"
echo "\t"
echo "\u"
echo "\v"
echo "\w"
echo "\x"
echo "\y"
echo "\z"
echo "\{"
echo "\|"
echo "\}"
echo "\~"
echo '\!'
echo '\"'
echo '\#'
echo '\$'
echo '\%'
echo '\&'
echo '\''
echo '\('
echo '\)'
echo '\*'
echo '\+'
echo '\,'
echo '\-'
echo '\.'
echo '\/'
echo '\0'
echo '\1'
echo '\2'
echo '\3'
echo '\4'
echo '\5'
echo '\6'
echo '\7'
echo '\8'
echo '\9'
echo '\:'
echo '\<'
echo '\='
echo '\>'
echo '\?'
echo '\@'
echo '\A'
echo '\B'
echo '\C'
echo '\D'
echo '\E'
echo '\F'
echo '\G'
echo '\H'
echo '\I'
echo '\J'
echo '\K'
echo '\L'
echo '\M'
echo '\N'
echo '\O'
echo '\P'
echo '\Q'
echo '\R'
echo '\S'
echo '\T'
echo '\U'
echo '\V'
echo '\W'
echo '\X'
echo '\Y'
echo '\Z'
echo '\['
echo '\\'
echo '\]'
echo '\^'
echo '\_'
echo '\a'
echo '\b'
echo '\c'
echo '\d'
echo '\e'
echo '\f'
echo '\g'
echo '\h'
echo '\i'
echo '\j'
echo '\k'
echo '\l'
echo '\m'
echo '\n'
echo '\o'
echo '\p'
echo '\q'
echo '\r'
echo '\s'
echo '\t'
echo '\u'
echo '\v'
echo '\w'
echo '\x'
echo '\y'
echo '\z'
echo '\{'
echo '\|'
echo '\}'
echo '\~'
echo '\;'
echo "\;"
echo '\>'
echo "\>"
echo '\<'
echo "\<"
echo '\|'
echo "\|"

View File

@@ -14,15 +14,6 @@ echo $?
echo DOET HET NIET > test1 | cat test1
#----------------------------------------------
# \ Backslash
echo "bip | bip ; coyotte > < \" "
echo bonjour > test\ 1
ls
rm test
#----------------------------------------------
# ; Semicolon separator
@@ -32,6 +23,17 @@ echo hallo ; echo poep >x1 >x2
echo hallo | echo hoi > y1 >y2 ; cat -e
echo "hello | this is some stuff > touch this file" | grep more
echo bonjour ; |
echo bonjour |;
;
echo coucou | ;
echo ;;
#----------------------------------------------
# Export builtins
@@ -40,8 +42,169 @@ export | grep -e "HOME="
export | grep -e "PWD="
export a="\\"
# var without export
POEP=directory1
MEERPOEP=directory2
#----------------------------------------------
# \ Echo Backslash
# ' " single quotes
echo hallo 'ma'ran' siemons
echo hallo 'ma\"ran' siemons
echo hallo 'ma\'ran'' siemons
echo "hallo"maran"
echo hallo"
echo poep"
echo poep"""
echo hallo"\poep
echo " " "
echo "
echo """
echo '
echo $USER"
echo "$USER
echo hallo$'USER' '
echo $USER'
echo $USER'
echo $'
echo $"USERhallo"
#----------------------------------------------
# \ Backslash
echo "bip | bip ; coyotte > < \" "
echo bonjour > test\ 1
ls
rm test
echo bonjour \; ls
echo \"test\"
echo "123\"456"
echo poep\'
echo "poep\"
echo "hallo\"\poep"
#echo "\$"
#echo "\""
#echo \'1234'
#echo \hallo
#echo "123\$456"
#echo "123\\456"
#echo “$\hallo”
#echo $"\hallo"
#echo "\\hallo"
#echo "hallo\\hoi"
#echo "\\$USER"
#echo "123\"456"
#echo "hallo\"\poep"
#echo hallo$\\abc
#echo hallo$\abc
#echo hallo$\abc
#echo '$USER'$USER\$USER/"$USER"
#echo \$?
#echo \"
#echo \poep
#echo "123\'456"
#echo 123\'456
#echo "'\$USER'"
#echo "\$USER"
#echo "123\"456"
#echo "poep\'"
#echo "poep\""
#echo "\$USER"
#echo \$USER
#echo \$?
#echo hallo\$USER
#echo ma\
#echo 'ma\' Hij ziet de \ niet als escape, print gewoon \
#echo 'ma\' Hij ziet de \ niet als escape, print gewoon \
#echo hallo ma\"ran siemons
#echo hallo 'ma\'ran' siemons
#echo "\""
#echo \'
#echo \n ' \n this is the; "first line"'
#echo 00\\\'pp
#echo \$HOME
#echo "\\s"
#echo "\n \\n \\\n"
#echo \>
#echo 00\\\\\'pp
#echo 00\\\\'pp'
echo \\
@@ -55,190 +218,112 @@ echo 123\!456
echo 123\456
echo "\"
echo \" "\\" "\"" \\ \' \"
echo "\\"
echo \"1234"
echo "1234\"
echo "1234\\"
echo "\\"
echo \a
echo \b
echo \c
echo \d
echo \e
echo \!
echo \"
echo \#
echo \$
echo \%
echo \&
echo \'
echo \(
echo \)
echo \*
echo \+
echo \,
echo \-
echo \.
echo \/
echo \0
echo \1
echo \2
echo \3
echo \4
echo \5
echo \6
echo \7
echo \8
echo \9
echo \:
echo \=
echo \?
echo \@
echo \A
echo \B
echo \C
echo \D
echo \E
echo \F
echo \G
echo \H
echo \I
echo \J
echo \K
echo \L
echo \M
echo \N
echo \O
echo \P
echo \Q
echo \R
echo \S
echo \T
echo \U
echo \V
echo \W
echo \X
echo \Y
echo \Z
echo \[
echo \\
echo \]
echo \^
echo \_
echo \a
echo \b
echo \c
echo \d
echo \e
echo \f
echo \g
echo \h
echo \i
echo \j
echo \k
echo \l
echo \m
echo \n
echo \o
echo \p
echo \q
echo \r
echo \s
echo \t
echo \u
echo \v
echo \w
echo \x
echo \y
echo \z
echo \{
echo \}
echo \~

View File

@@ -22,6 +22,7 @@ cd $(dirname $0)
# copy the executable to current directory
MINISHELL="../minishell"
make -C ../ &>/dev/null
cp $MINISHELL .
# globale variables
@@ -88,6 +89,10 @@ cd $(dirname $0)
file="${file_ori/#/$x}"
file="${file%.sh}"
file="${file/%/.sh}"
if [ -e "$file" ]
then
break
fi
done
}
@@ -162,6 +167,10 @@ cd $(dirname $0)
minishell_execution=$( echo "$@" | $CURRENT_D/minishell 2>/dev/null )
rm -rf $CURRENT_D/tmp/*
# for env, special treatment
bash_execution="$( echo "$bash_execution" | sort | grep -v -e "LINES=" -e "COLUMNS=" -e "_=" -e"LESSCLOSE=" -e "LESSOPEN=" )"
minishell_execution="$( echo "$minishell_execution" | sort | grep -v -e "LINES=" -e "COLUMNS=" -e "_=" -e"LESSCLOSE=" -e "LESSOPEN=" )"
#compare output
if [ "$bash_execution" = "$minishell_execution" ]
then