Попробуйте это: %s/$/^V^M/
(где ^V
- это Ctrl-V
, а ^M
- это Ctrl-M
-... когда вы набираете ^V
, он печатает ^
символ, затем бэкспейс над ним, а когда вы набираете ^M
, он появляется как ^M
. ... Ctrl-V - это стандартный символ tty literal next - выполните команду stty -a
, чтобы показать специальные символы вашего tty).
установить переменную в начале сценария, которая задает IP-адрес, а затем использовать эту переменную в фактической команде, выполняемой сценарием.
пришло мне в голову, что-то вроде
IPADDR=$(ip addr show |grep 'inet '|grep -v 127.0.0.1 |awk '{print $2}'| cut -d/ -f1)
, затем в скрипте просто используйте $IPADDR
там, где вы бы поместили IP.
Это будет корректно работать только на сервере с одним IP-адресом и одной петлей 127.0.0.1, и, вероятно, есть лучший способ сделать это.
Предполагая, что «хост» имеет один IP-адрес, вы можете сделать что-то вроде:
MYHOSTIP=$(host `hostname` | head -n 1 | awk '{ print $NF; }') mycli servie --host $MYHOSTIP