ash: fix ${var/s/r} handling, add testcase.

This commit is contained in:
Denis Vlasenko
2008-06-14 06:04:59 +00:00
parent a1767a1f5d
commit 2659c63213
3 changed files with 75 additions and 61 deletions

View File

@@ -0,0 +1,20 @@
a041#c
a041#c
a\041#c
a\041#c
a\041#c
a\041#c
a\041#c
a\041#c
a\041#c
a\c
a\c
a\c
a\\c
a\\c
a\\c
a\tc
a\tc
a\tc
atc
a\tc

View File

@@ -0,0 +1,41 @@
a='abc'
r=${a//b/\041#}
echo $r
echo ${a//b/\041#}
echo "${a//b/\041#}"
a='abc'
r=${a//b/\\041#}
echo $r
echo ${a//b/\\041#}
echo "${a//b/\\041#}"
a='abc'
b='\041#'
r=${a//b/$b}
echo $r
echo ${a//b/$b}
echo "${a//b/$b}"
a='abc'
b='\'
r="${a//b/$b}"
echo $r
echo ${a//b/$b}
echo "${a//b/$b}"
a='abc'
b='\\'
r="${a//b/$b}"
echo $r
echo ${a//b/$b}
echo "${a//b/$b}"
a='abc'
b='\t'
r="${a//b/$b}"
echo $r
echo ${a//b/$b}
echo "${a//b/$b}"
echo ${a//b/\t}
echo "${a//b/\t}"