我的问题在这里描述 在字符串的第一个字符中添加方括号。
使用上面的链接参考,我正在尝试从过去 4 小时开始使用 bash 获得结果。
使用 sed 的任何解决方法。
#!/bin/bash
DESC="openerp-server"
initial="$(echo "$DESC" | sed 's/(.)/'[1]'/g')"
echo $initial
谢谢。
带sed
:
echo "string" | sed 's/^(.)/[1]/'
echo "string" | sed 's/./[ ]/' # The same but simplified
输出:
[s]tring
bash
提供了对标准参数扩展运算符的扩展,使您可以轻松访问参数的第一个字符和其余字符。
$ DESC="openerp-server"
$ DESC="[${DESC:0:1}]${DESC:1}"
$ echo "$DESC"
[o]penerp-server
与POSIX兼容的版本稍长,需要一个临时变量来固定尾巴。
$ DESC="openerp-server"
$ DESC_tail=${DESC#?}
$ DESC="[${DESC%$DESC_tail}]$DESC_tail"
$ echo "$DESC"
[o]penerp-server
awk
版本:
echo "string" | awk '{$1="["$1"]"}8' FS= OFS=
[s]tring