วิธีคัดลอกข้อความคอนโซลคำสั่ง?


13

ฉันได้ใช้คำสั่ง wpa_passphrase และฉันได้รับสิ่งนี้:

เครือข่าย = {ssid = "blahblah" # psk = "moreblahblah" psk = d5e532ecca53ea963e5b3b5521bb3682c53fcf5b6d55f15622027145c795b661}

ฉันต้องการคัดลอก "psk = [long string]" ไปยังไฟล์ wpa_supplicant.conf ของฉัน ฉันจะเลือกเพื่อคัดลอกได้อย่างไร แล้วฉันจะใช้คำสั่งอะไรเพื่อคัดลอก? เช่นนั้นในโปรแกรมแก้ไขข้อความที่ฉันโปรดปรานฉันสามารถกดคำสั่ง paste เพื่อวางได้? (ps. ฉันไม่มีเม้าส์)

คำตอบ:


21

หากคุณมีทัชแพดให้เน้นข้อความและกดCtrl+ Shift+ Cเพื่อคัดลอก ...

แหล่งข้อมูลต่อไปนี้อธิบายวิธีคัดลอก / วางโดยใช้แป้นพิมพ์เท่านั้น - หน้าจอ / byobu:

ฉันจะรวมการคัดลอกบัฟเฟอร์ของ Byobu กับคลิปบอร์ด X ได้อย่างไร

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

คัดลอกและวางในโหมด Scrollback (หน้าจอ / byobu)

  • เข้าสู่โหมด scrollback: Ctrl+ A+ [หรือใน byobu ด้วยF7
  • เลื่อนเคอร์เซอร์ไปที่จุดเริ่มต้นของข้อความที่คุณต้องการคัดลอกกด spacebar
  • เลื่อนเคอร์เซอร์ไปที่ท้ายข้อความที่คุณต้องการคัดลอกและกด enter
  • หากต้องการวางข้อความให้กดCtrl+ A+ ]หรือAlt+Insert

10
ข้อมูลนี้ไม่ถูกต้องสำหรับ byobu คัดลอก byobu เป็น Spacebar แล้วใส่ตามคู่มือ byobu แตกต่างจากหน้าจอเล็กน้อยเช่นนั้น ฉันพูดถึงที่นี่เพียงเพราะโพสต์นี้มีอันดับสูงมากใน google สำหรับ "คัดลอก / วางใน byobu"
philo

2

ลองสิ่งนี้:

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

คำสั่งควรนำส่วน "psk = d5e532ecca53ea963e5b3b5521bb3682c53fcf5b6d55f5f5f6f55f5f5f5f5f5f5f5f5f5f5" และคัดลอกไปยังจุดสิ้นสุดของไฟล์ 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"

หรือคุณอาจใช้เสียงเรียกเข้าเพื่อดึงข้อความที่ต้องการเลือกในโหมดภาพ

ป.ล. คนที่มีความรู้เรื่อง sed จะให้ทางออกที่ง่ายกว่าที่คิด


คำสั่งอาจจะเขียนเป็น:sudo sh ... cat rough | sudo tee -a wpa_supplicant.conf
Lekensteyn

@Lekensteyn และจะถูกแทนที่ด้วยcat rough | < rough
Melebius

1

แน่นอนว่าวิธีที่ใช้กันมากที่สุดคือการใช้เมาส์หรืออุปกรณ์ชี้ตำแหน่งอื่น ๆ (เช่นทัชแพด) แม้ว่าจะค่อนข้างยอดเยี่ยม แต่ก็เป็นไปได้ที่จะคัดลอกข้อความโดยไม่ใช้เมาส์ (แน่นอนคุณอาจมีเหตุผลที่ถูกต้องไม่ใช้อุปกรณ์ตัวชี้) ตรวจสอบxclipเช่นเดียวกับคำตอบนี้ ดังนั้นคุณสามารถใช้:

wpa_passphrase | xclip -sel clip

0

คำสั่ง sed ต่อไปจะเรียกคีย์ (ซึ่งประกอบด้วยตัวจากชุดเลขฐานสิบหก) จากการส่งออกของและวางไว้ในแฟ้มชั่วคราวwpa_passphrasepass

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

เมื่อคุณไม่มีเมาส์คุณจะไม่สามารถเลือกและคัดลอกมันได้ เราจะใช้nanotexteditor สำหรับการแทรกผ่าน:

nano wpa_suppliciant.conf

Insertย้ายไปยังตำแหน่งที่คุณต้องการใช้ปุ่มลูกศรของคุณและกด ป้อนชื่อไฟล์ที่คุณเพิ่งสร้างขึ้นpassมาแล้วตามด้วย Enter เลิกและบันทึกผลโดยการกดCtrl+ Xและยืนยันโดยการป้อนตามYEnter


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/ )

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.