最初の文字と最後の文字の前のスペースを削除するだけです
FOO=" ffs ff ssdf hfdh hfghfghfgh hhgfg "
result
ffs ff ssdf hfdh hfghfghfgh hhgfg
ありがとうございました
最初の文字と最後の文字の前のスペースを削除するだけです
FOO=" ffs ff ssdf hfdh hfghfghfgh hhgfg "
result
ffs ff ssdf hfdh hfghfghfgh hhgfg
ありがとうございました
目標が変数を変更することであると仮定します (移植性の低い順に):
# POSIX
foo=${foo#"${foo%%[! ]*}"} foo=${foo%"${foo##*[! ]}"}
# Bash/ksh
${BASH_VERSION+'false'} || shopt -s extglob
foo=${foo##+( )} foo=${foo%%+( )}
# Bash4/ksh
IFS=' ' read -rd '' foo < <(printf %s "$foo")
# Bash4/ksh93
${KSH_VERSION+'false'} || typeset -n BASH_REMATCH=.sh.match
[[ $foo =~ ^\ *([! ].*[! ])\ *$ ]]
foo=${BASH_REMATCH[1]}
# ksh93
foo=${foo/~(K)*(\ )@([! ]*[! ])*(\ )/\2}
いつものように、何から始めて何をしたいのかを知らずに最善のアプローチを推奨することは不可能です。
echo " ffs ff ssdf hfdh hfghfghfgh hhgfg " | sed -e 's/^ *//g' -e 's/ *$//g'
bash v4 を使用している場合は、これでうまくいくはずです。
FOO=${FOO:1:-1}
エコー $FOO | sed 's/^ *//' | sed 's/ *$//'