У меня есть файл с именем test
, я открываю его, используя vi следующим образом:
vi test
Теперь я хочу вставить строку с помощью команды оболочки, для простоты я использую printf
:
:r! printf %s hello
Однако введенная строка имеет вид
tests
, т. Е. Имя файла с добавлением s
.
Если я введу ту же команду в терминале напрямую он работает нормально.
В конечном итоге я хочу закодировать строку в base64 и ввести ее в той же строке, что и мой курсор в vi, так что я не буду нужно скопировать строку в отдельный терминал, закодировать ее и скопировать обратно в vi. Как я могу это сделать? Что я делаю не так?