1#   This program is free software: you can redistribute it and/or modify
2#   it under the terms of the GNU General Public License as published by
3#   the Free Software Foundation, either version 3 of the License, or
4#   (at your option) any later version.
5#
6#   This program is distributed in the hope that it will be useful,
7#   but WITHOUT ANY WARRANTY; without even the implied warranty of
8#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9#   GNU General Public License for more details.
10#
11#   You should have received a copy of the GNU General Public License
12#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
13#
14t() {
15    printf '%s  |  %s\n' "$1" "$2"
16  }
17  v="'"       # v <- '
18
19  #--
20  t "${v/$'\''/$'\''}"        "'"
21  t  ${v/$'\''/$'\''}         "'"
22  t "${v/$'\''/x}"            "x"
23  t  ${v/$'\''/x}             "x"
24  t "${v/x/$'\''}"            "'"
25  t  ${v/x/$'\''}             "'"
26  t "${v/x/$'\x5c\''}"        "'"
27  t  ${v/x/$'\x5c\''}         "'"
28  t "${v/\'/\'}"              "'"
29  t  ${v/\'/\'}               "'"
30  t  ${v/\'/x}               "x"
31
32echo "'"
33echo "$'\''"
34
35echo $'\''
36
37echo $'\'abcd\''
38echo "$'\'abcd\''"
39
40v=1
41echo ${v/1/\'}
42echo ${v/\'/2}
43