Bash String Concatenation

Posted on in Categories , , last updated November 18, 2010

How do I join two strings under BASH? I have two strings stored in two different variables (_p=/delta and _u=aqua) and how do I join this and assign it to another variable in bash?

You can use parameter substitution as follows:

_p="/delta"
_u="aqua"
### join two $vars ###
out="${_p}${_u}"
echo "${_p}${_u}"
echo "${_p} and ${_u}"
echo "${_p}/${_u}"
echo "Output: $out"

Another example:

#!/bin/bash
_domain="${1:-example.com}"
_root="/chroot"
_path="${_root}/${_domain}"
echo "Host: ${HOSTNAME}@$(date) by $USER"
echo
echo "Setting Apache for ${_domain} @ ${_path}...."
# setupJail "${_domain}" "${_path}"

Sample outouts:

 ./setup.httpd nixcraft.net.in
Host: [email protected] Nov 19 01:44:03 IST 2010 by root

Setting Apache for nixcraft.net.in @ /chroot/nixcraft.net.in...

2 comment

  1. Assigned the variables in a quoted string, you can include or not include spaces, commas or anything else as you like.

    a=”part one”
    b=”part two”
    c=”$a, $b”
    echo “$c”
    part one, part two

Leave a Comment