Vimscript оценивается точно так же, как команды Ex, набранные в командной строке :
. В команде ex
переменных не было, поэтому их невозможно указать. При интерактивном вводе команды вы, вероятно, использовали бы
для вставки содержимого переменной:
:sleep <C-R>=timetowait<CR>m<CR>
... но в скрипте необходимо использовать :execute
. Все литературные части команды Ex должны быть заключены в кавычки (одинарные или двойные кавычки), а затем соединены с переменными:
execute 'sleep' timetowait . 'm'
В вашем примере вы хотите поместить переменную i
в команду :%s
:
for i in range(1,40) | execute '%s/S' . i . 'Tg//gn' | endfor
(Превращение моих комментариев в ответ)
Попробуйте / sbin / ifconfig -a
. У меня были проблемы в некоторых случаях, когда ifconfig не отображал никаких данных, пока 1) я не был пользователем root или 2) я не поставил флаг -a. Это противоречит тому, что я знаю как системный администратор, но в некоторых случаях, похоже, так оно и есть.
Вы также можете посмотреть netstat -rn
, чтобы посмотреть на таблицу маршрутизации - я не очень хорошо знаком с Debian, но я не видел, что я ожидал от этой команды в вашем выход.
Другая команда - sudo / sbin / ip a
. Для его выполнения (по крайней мере, в моей системе) требуется root-доступ, но он дает тот же набор информации, что и ifconfig
.