summaryrefslogtreecommitdiffstats
path: root/test/bashisms/special-expansions.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--test/bashisms/special-expansions.sh26
-rw-r--r--test/bashisms/special-expansions.sh.out36
2 files changed, 62 insertions, 0 deletions
diff --git a/test/bashisms/special-expansions.sh b/test/bashisms/special-expansions.sh
new file mode 100644
index 0000000..93a4f7f
--- /dev/null
+++ b/test/bashisms/special-expansions.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+set -- foo bar moo
+
+echo BASHISM: ${#@}
+echo BASHISM: ${#*}
+
+echo BASHISM: ${@%f*}
+echo BASHISM: ${*%f*}
+echo BASHISM: ${@%%f*}
+echo BASHISM: ${*%%f*}
+
+echo BASHISM: ${@#*o}
+echo BASHISM: ${*#*o}
+echo BASHISM: ${@##*o}
+echo BASHISM: ${*##*o}
+
+echo BASHISM: ${@/?/u}
+echo BASHISM: ${*/?/u}
+echo BASHISM: ${@/?/}
+echo BASHISM: ${*/?/}
+
+echo BASHISM: ${@:2}
+echo BASHISM: ${*:2}
+echo BASHISM: ${@:1:1}
+echo BASHISM: ${*:1:1}
diff --git a/test/bashisms/special-expansions.sh.out b/test/bashisms/special-expansions.sh.out
new file mode 100644
index 0000000..66e60fd
--- /dev/null
+++ b/test/bashisms/special-expansions.sh.out
@@ -0,0 +1,36 @@
+possible bashism in bashisms/special-expansions.sh line 5 (${#@} or ${#*}):
+echo BASHISM: ${#@}
+possible bashism in bashisms/special-expansions.sh line 6 (${#@} or ${#*}):
+echo BASHISM: ${#*}
+possible bashism in bashisms/special-expansions.sh line 8 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${@%f*}
+possible bashism in bashisms/special-expansions.sh line 9 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${*%f*}
+possible bashism in bashisms/special-expansions.sh line 10 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${@%%f*}
+possible bashism in bashisms/special-expansions.sh line 11 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${*%%f*}
+possible bashism in bashisms/special-expansions.sh line 13 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${@#*o}
+possible bashism in bashisms/special-expansions.sh line 14 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${*#*o}
+possible bashism in bashisms/special-expansions.sh line 15 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${@##*o}
+possible bashism in bashisms/special-expansions.sh line 16 (${[@|*]#[#]pat} or ${[@|*]%[%]pat}):
+echo BASHISM: ${*##*o}
+possible bashism in bashisms/special-expansions.sh line 18 (${parm/?/pat[/str]}):
+echo BASHISM: ${@/?/u}
+possible bashism in bashisms/special-expansions.sh line 19 (${parm/?/pat[/str]}):
+echo BASHISM: ${*/?/u}
+possible bashism in bashisms/special-expansions.sh line 20 (${parm/?/pat[/str]}):
+echo BASHISM: ${@/?/}
+possible bashism in bashisms/special-expansions.sh line 21 (${parm/?/pat[/str]}):
+echo BASHISM: ${*/?/}
+possible bashism in bashisms/special-expansions.sh line 23 (${foo:3[:1]}):
+echo BASHISM: ${@:2}
+possible bashism in bashisms/special-expansions.sh line 24 (${foo:3[:1]}):
+echo BASHISM: ${*:2}
+possible bashism in bashisms/special-expansions.sh line 25 (${foo:3[:1]}):
+echo BASHISM: ${@:1:1}
+possible bashism in bashisms/special-expansions.sh line 26 (${foo:3[:1]}):
+echo BASHISM: ${*:1:1}