update repository
[cmdllinux.git] / bash_n_examples / bash / functions / __ASd1.sh
blob340e95c6b962e2aae9f3c7df3aa34915f7cdce6d
1 S="\$(asda\$(s\$(g)), \$(z))sd \$(asds \$(asd))dsa"
2 #S="\$(asda\$(s\$(g)), \$(z))sd \$(asds \$(asd))"
3 #S="asd \$(asda\$(s\$(g)), \$(z))sd \$(asds \$(asd))dsa"
4 #S="asd \$(asda\$(s\$(g)), \$(z))sd \$(asds \$(asd))"
5 echo "$S"
7 ##linefeed separating sections
8 echo "+++"
9 (echo -n "$S"; echo -n ")") | sed -e 's/\$(/+/g' -e 's/)/-/g' | \
10 while read -r -N 1 A; do
11 [ -z "$PP" ] && PP=0
12 [ -z "$MM" ] && MM=0
13 [ "$A" = "+" ] && PP=$(expr $PP + 1)
14 [ "$A" = "-" ] && MM=$(expr $MM + 1)
15 if [ "$PP" = "$MM" ]; then
16 if [ "$A" != "-" ]; then
17 echo -n "$A"
18 val=1
20 else
21 [ "$A" = "-" ] && [ -n "$val" ] && echo && val=
23 done
24 echo "---"
27 ##linefeed separating sections
28 echo "+++"
29 echo -n "$S" | sed -e 's/\$(/+/g' -e 's/)/-/g' | \
30 while read -r -N 1 A; do
31 [ -z "$PP" ] && PP=0
32 [ -z "$MM" ] && MM=0
33 [ "$A" = "+" ] && PP=$(expr $PP + 1)
34 [ "$A" = "-" ] && MM=$(expr $MM + 1)
35 if [ "$PP" = "$MM" ]; then
36 if [ -n "$val" ]; then
37 echo "-"
38 val=
40 else
41 echo -n "$A"
42 val=1
44 done | \
45 sed -e 's/+/$(/g' -e 's/-/)/g'
46 echo "---"