Size: 1130
Comment: igli: *sigh* BASH handles strings fine. m00 gc ;-)
|
Size: 416
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
<<Anchor(faq67)>> == How can I trim leading/trailing white space from one of my variables? == There are a few ways to do this: {{{ #POSIX, but fails if the variable contains newlines read -r var << EOF $var EOF }}} The easiest and cleanest way is with a bash herestring: {{{ read -rd '' x <<< "$x" }}} Using an empty string as a delimiter means the read consumes the whole string, as NUL is used. (Remember: BASH only does C-string variables.) This is entirely safe for any text, including newlines. There's also a solution using [[glob|extglob]] which shows how you can use it in parameter expansion: {{{ # Bash shopt -s extglob x=${x##+([[:space:]])} x=${x%%+([[:space:]])} shopt -u extglob }}} This also works in KornShell, without needing the explicit `extglob` setting: {{{ # ksh x=${x##+([[:space:]])} x=${x%%+([[:space:]])} }}} There are many, many other ways to do this, using sed for instance: {{{ # POSIX, suppress the trailing and leading whitespace on every lines x=$(echo "$x" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//') }}} |
My name is Valentine. Alaska is where my house is. Fencing is the only pastime her partner doesn't authorize of. After running out his job for several years he ended up being a hotel receptionist. Have a look at the most recent news on my site: https://www.youtube.com/watch?v=S6joRgSfOxA<<BR>><<BR>> <<BR>><<BR>> Here is my web blog: [[https://www.youtube.com/watch?v=S6joRgSfOxA|Rejuvenate with Dr. Marks]] |
My name is Valentine. Alaska is where my house is. Fencing is the only pastime her partner doesn't authorize of. After running out his job for several years he ended up being a hotel receptionist. Have a look at the most recent news on my site: https://www.youtube.com/watch?v=S6joRgSfOxA<<BR>><<BR>>
Here is my web blog: Rejuvenate with Dr. Marks