Как скопировать текст командной консоли?


13

Я использовал команду wpa_passphrase и получаю что-то вроде этого:

network = {ssid = "blahblah" # psk = "moreblahblah" psk = d5e532ecca53ea963e5b3b5521bb3682c53fcf5b6d55f15622027145c795b661}

Мне нужно скопировать этот «psk = [длинная строка]» в мой файл wpa_supplicant.conf. Как я могу выбрать его, чтобы скопировать? И затем, какую команду я использую, чтобы скопировать его? Так, что в моем любимом текстовом редакторе я могу нажать команду вставки, чтобы вставить его? (пс. у меня нет мыши)

Ответы:


21

если у вас есть тачпад, выделите текст и нажмите Ctrl+ Shift+, Cчтобы скопировать ...

Следующие ресурсы описывают, как копировать / вставлять, используя только клавиатуру - screen / byobu:

Как интегрировать буфер копирования Byobu с буфером обмена X?

http://www.samsarin.com/blog/2007/03/11/gnu-screen-working-with-the-scrollback-buffer/

Копирование и вставка в режиме прокрутки (экран / быбу)

  • Войдите в режим прокрутки: Ctrl+ A+ [или в бёбу тожеF7
  • Переместите курсор в начало текста, который вы хотите скопировать, нажмите spacebar
  • Переместите курсор в конец текста, который вы хотите скопировать, и нажмите enter
  • Чтобы вставить текст, нажмите Ctrl+ A+ ]или Alt+Insert

10
Эта информация не совсем подходит для Бёбу. Скопируйте в byobu - пробел, затем Enter, согласно инструкции byobu . Таким образом, немного отличается от экрана. Я упоминаю об этом только здесь, потому что этот пост очень высоко оценивается в Google как «скопировать / вставить в byobu».
Philo

2

Попробуй это:

wpa_passphrase | awk '/psk/ {print $4}' >> wpa.supplicant.conf

Команда должна извлечь часть «psk = d5e532ecca53ea963e5b3b5521bb3682c53fcf5b6d55f15622027145c795b661» и скопировать ее в конец файла wpa.supplicant.conf. Попробуйте изменить $4к $3или $2если вы не получаете правую часть команды wpa_passphrase.


1

Может быть не идеальный, но обходной путь. Может быть, вы могли бы записать вывод в файл, а затем перейти в файл, удалить ненужный текст и с помощьюcat его, добавить его в wpa_supplicant.conf.

В основном ваш рабочий процесс будет:

command > rough

nano rough здесь удалите ненужный текст и оставьте только нужные, т.е. psk

sudo sh -c "cat rough >> wpa_supplicant.conf"

Или, может быть, вы могли бы использовать vim, чтобы получить нужный текст, выбирая его в визуальном режиме.

PS Кто-то с хорошим знанием sed даст вам более простое решение, чем это, я думаю.


sudo sh ...команду можно записать в виде: cat rough | sudo tee -a wpa_supplicant.conf.
Лекенштейн

@Lekensteyn И cat rough |можно заменить на < rough.
Мелебиус

0

Следующая команда sed извлечет ключ (который состоит из символов шестнадцатеричного набора) из выходных данных wpa_passphraseи поместит его во временный файл pass.

wpa_passphrase | sed 's/.*psk=\([0-9a-f]*\).*/\1/' > pass

Поскольку у вас нет мыши, вы не можете просто выбрать и скопировать ее. Мы будем использовать nanotexteditor для вставки этого прохода:

nano wpa_suppliciant.conf

Перейдите в нужное место с помощью клавиш со стрелками и нажмите Insert. Введите имя файла, который вы только что создали pass, затем нажмите Enter. Выйдите и сохраните результат, нажав Ctrl+, Xи подтвердите его, введя и Yзатем Enter.


0

Конечно, наиболее распространенный способ сделать это - использовать мышь или другое указательное устройство (например, сенсорную панель). Хотя это несколько необычно, можно копировать текст без мыши. (Конечно, у вас может быть веская причина не использовать указывающее устройство.) Проверьте xclip, как в этом ответе . Таким образом, вы можете использовать:

wpa_passphrase | xclip -sel clip

0

Вы можете настроить связывание клавиш в byobu, чтобы иметь возможность отправлять текст, выбранный в буфере byobu, в буфер обмена X.

Добавьте следующее к ~/.byobu/keybindings

# Add cool line to make copying to x clipboard possible.
# This binds C-a b to copy screen's copy buffer to the system clipboard.
bind b eval writebuf 'exec /bin/sh -c "xsel -i < $BYOBU_RUN_DIR/printscreen"'

Затем, после использования обычного F7, переместите, выберите пробел, чтобы начать, переместите, введите, чтобы сохранить в буфере, затем вы можете использовать C-a b (Ctrl-a, затем b), чтобы сохранить его в буфер обмена.

(На основе https://dodoincfedora.wordpress.com/2012/06/23/integrating-byobuscreens-copy-buffer-with-xgnome-clipboard/ )

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.