Differences between revisions 5 and 24 (spanning 19 versions)
Revision 5 as of 2008-07-04 08:55:23
Size: 871
Editor: pgas
Comment: remove the loop add a solution with read and here strings
Revision 24 as of 2016-05-07 04:12:19
Size: 416
Editor: DelorisDem
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 -- none of them elegant.

First, the most portable way would be to use `sed`:

{{{
   # POSIX
   x=$(echo "$x" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
}}}

One can also achieve the same goal using Bash builtins:

{{{
   # Bash
   # Remove leading whitespace:
   read -r x <<< "$x"
}}}

There's also a solution using [:glob:extglob]:

{{{
   # 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. These are not necessarily the best, but they're known to work.
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

BashFAQ/067 (last edited 2018-11-29 15:32:42 by GreyCat)