Задать вопрос
@drozdovae1995

Как убрать перенос строки при копировании в буфер обмена (echo, cut, xclip)?

Возникла необходимость скопировать вывод из команды в буфер обмена. Соорудила такую команду:

echo -n "foobar" | sha256sum | cut -c1-64 | xclip -filter -selection clipboard

Все копируется, но при вставке в текстовый редактор, например, курсор перемещается на следующую строку. Если от переноса строки в начале помогает ключ -n, то как сделать так, чтобы не было переноса после - я не знаю и найти не смогла (может не так искала, конечно).
Я - новичок в мире Linux, поэтому не ругайтесь)
  • Вопрос задан
  • 331 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 3
@mlyamasov
man xclip
Опция -r, -rmlastnl?
Ответ написан
hint000
@hint000
у админа три руки
В принципе у вас всё уже есть, надо перед копированием в буфер обмена обернуть результат в тот же самый echo -n вот так:
echo -n $(echo -n "foobar" | sha256sum | cut -c1-64) | xclip -filter -selection clipboard
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
как вариант, попробуйте
cut -c1-64
заменить на
awk '{printf $1}'

п.с
хотя можно просто добавить для cut ключ -z чтобы он после обработки данных не переводил строку
cut -c1-64 -z

-z, --zero-terminated
line delimiter is NUL, not newline
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы