LINUX.ORG.RU

Copy and Paste WITHOUT mouse


0

0

Как мне скопировать строчку из файла и вставить её в консоль(не выполнить, а просто вставить) для последующей можификации(!)? ...например строчку скритовую длинную из файла где она приведена в качестве примера, но так, чтоб изменить в ней пару моментов...

Ограничения: Редактор - любой Мыши - нет Иксов - нет

решения типа зади куда надо с иксовой машины через ssh или поставь gpm не предлагать...

FAR Manager под Windows :)

...

Реально - такое возможно в screen. Хотя и очень неудобно. Одна из многих фич, которых до сих пор не хватает в Linux...

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

до сих пор... ну сейчас есть и мышь и иксы и с помощью ssh это можно сделать(из под машины с иксами куда надо залезть...) а как раньше без этого жили??? я например пользую связку echo "some" >> file и редактирую строчку в файле а потом "извлекаю его" или head -n <на какой строке> <файл>| tail -n 1 >> file- выводит эту строку в файл...

но это же геммор...

jerry_ru
() автор топика
Ответ на: комментарий от jerry_ru

>ну сейчас есть и мышь и иксы

И это - не панацея. Как выделить на экране вертикальный блок?

KRoN73 ★★★★★
()
Ответ на: комментарий от gnomino

Только баш надо будет запустить, проверил -- работает, действительно иногда не хватает этой фичи топикстартеру спасибо.

gnomino
()

А какой-нить эмулятор терминала позволяет строки копировать без 
перенаправления команд и записи в файл? т.е.

          Retry limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=77/100  Signal level=-51 dBm  Noise level=-85 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:1607  Invalid misc:0   Missed beacon:0

ppp0      no wireless extensions.

darkelf@darkelf-laptop:~$ 4^G
(пишим 4 потом ctrl+G и получаем)

darkelf@darkelf-laptop:~$           Tx excessive retries:1607  Invalid misc:0   Missed beacon:0

и можно эту строку редактировать

dimon555 ★★★★★
()

> Как мне скопировать строчку из файла и вставить её в консоль(не 
> выполнить, а просто вставить) для последующей можификации(!)? 
> ...например строчку скритовую длинную из файла где она приведена в 
> качестве примера, но так, чтоб изменить в ней пару моментов... 

Не совсем то, но можно делать так:

% cat txt
1
2
echo hi
% fgrep echo txt | sed s/hi/hello/
echo hello
% `fgrep echo txt | sed s/hi/hello/`
hello

mutronix ★★★★
()
Ответ на: комментарий от dimon555

Для этого существует возможность перенаправления вывода. Постоянно сохранять тысячи строк никому не нужно

mutronix ★★★★
()
Ответ на: комментарий от dimon555

> darkelf@darkelf-laptop:~$ 4^G (пишим 4 потом ctrl+G и получаем)

не понял чего где и куда :))

А при чем тут тысячи строк кода? одну единственную сокровенную и так мне необходимую...

jerry_ru
() автор топика
Ответ на: комментарий от scaldov

> а через cat /dev/vcs разве нельзя??

А что есть /dev/vcs?

но в любом случае cat это не то он всего лишь выводит не позволяя редактировать.

jerry_ru
() автор топика

Взять emacs, открыть файл, скопировать строчку, M-x shell, вставить, отредактировать, запустить

anonymous
()

Screen может:

у меня клавиша С-a переназначена на `

итак

` esc - режим копирования

space - отметка начала выделения

space - отметка конца выделения

` : - вход в командный режим

` ] - вставка строки

sutulo
()
Ответ на: комментарий от scaldov

>типа это символьный скриншот консоли. грепаем нужную строчку

Так пока ты начнёшь писать в консоли - уже «скриншот» этот изменится.

...

И так и остался незакрытым вопрос вертикального блока.

KRoN73 ★★★★★
()
Ответ на: комментарий от scaldov

о, кстати о баш хистори... как в отрытой баш сессии перегрузить историю? ...ежели я эхой туда строчку загоняю она только в новой сессии появляется...

jerry_ru
() автор топика
Ответ на: комментарий от jerry_ru

man bash, описание встроенной команды history, опции -r или -n

mky ★★★★★
()
Ответ на: комментарий от kto_tama

$(echo -n "ping mail.ru") выполнит пинг майл ру, если надо из файла, то вместо "echo -n "ping mail.ru"", поставить соответствующую sed команду.

думаю, что вернуть в строку шелла невозможно, так как shell это не файл.

Можно предположить, что набранные символы помещаются в какой-то файл, наверно так и есть, уверен, что они также помещаются во внутренних структурах процесса shell (и там-то и могут быть редактируемы), а туда их записать из файла будет проблематично, но ничего невозможного, код-то открыт, переписывайте ваш shel )))))))))))))))))))))))))))))))))))))))))))

IvanR ★★★
()
Ответ на: комментарий от jerry_ru

> как в отрытой баш сессии перегрузить историю?

Так же, как и перечитать конфиг — заучи, юзер, эти золотые слова:

11:23 ~: exec bash

egorinsk
()
Ответ на: комментарий от egorinsk

не надо ерничать.

в общем весьма простой способ(и пока единственный) это такой:

cat <file> | head -n <line> | tail -n <line> >> ~/.bash_history history -n <press UP ARROW key>

вуаля... через проход, конечно, задний но как видите - все возможно.

Всем спасибо за помощь.

jerry_ru
() автор топика
Ответ на: комментарий от jerry_ru

...мда к форматированию на ЛОРе надо попривыкнуть...

jerry_ru
() автор топика
Ответ на: комментарий от anonymous

>В gnome-terminal ctrl+мыша.

Век живи, век учись. Не панацея, правда, в случае чистой консоли, но это экзотика.

KRoN73 ★★★★★
()
Ответ на: комментарий от dexpl

>Если на то пошло, вертикальные блоки и vim умеет

И даже mcedit... И начнём мы из /dev/vcs во временные файлы гнять каждый чих. Гланды тоже, в принципе, не возбраняется через анус удалять...

KRoN73 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.