Showing 1 changed files with 29 additions and 0 deletions
+29
README.md
... ...
@@ -77,3 +77,32 @@ DATE_START_ALL=$(date +%s)
77 77
 log "############################################################"
78 78
 log "Started @ $DATE_START_ALL"
79 79
 ```
80
+
81
+# URLencode
82
+```bash
83
+rawurlencode() {
84
+  local string="${1}"
85
+  local strlen=${#string}
86
+  local encoded=""
87
+  local pos c o
88
+
89
+  for (( pos=0 ; pos<strlen ; pos++ )); do
90
+     c=${string:$pos:1}
91
+     case "$c" in
92
+        [-_.~a-zA-Z0-9] ) o="${c}" ;;
93
+        * )               printf -v o '%%%02x' "'$c"
94
+     esac
95
+     encoded+="${o}"
96
+  done
97
+  echo "${encoded}"    # You can either set a return variable (FASTER)
98
+  REPLY="${encoded}"   #+or echo the result (EASIER)... or both... :p
99
+}
100
+args=$1
101
+
102
+echo http://url/q?=$(rawurlencode "$args")
103
+```
104
+Output example :
105
+```bash
106
+$ ./toto.sh "toto@gmail.com&truc=bidule&c=0x1234&tutu=%3"
107
+http://url/q?=toto%40gmail.com%26truc%3dbidule%26c%3d0x1234%26tutu%3d%253
108
+```