Si të kopjoni dhe ngjisni tekst në Bash Shell të Linux
Dëshironi të kopjoni dhe ngjitni në vijën e komandës së guaskës Bash? Ne do t'ju tregojmë teknika të shumta nëse ju favorizoni tastierën ose miun. Këto funksionojnë nëse jeni në një desktop grafik ose në një TTY tradicionale të bazuar në tekst.
Shkurtoret e zakonshme të tastierës nuk do të funksionojnë
Kopjimi dhe ngjitja e tekstit është një pjesë kryesore e përdorimit të një kompjuteri. Kur njerëzit përdorin një kompjuter Linux për herët e para, pavarësisht nëse vijnë nga Windows ose nga bota e macOS, ata shpesh ngatërrohen kur përpiqen të kopjojnë dhe ngjitin brenda një dritareje terminali.
Në Windows, ju përdorni Ctrl+C
për të kopjuar një pjesë të tekstit të theksuar dhe Ctrl+V
për ta ngjitur. Në macOS, ju përdorni Command+C
për ta kopjuar atë dhe Command+V
për ta ngjitur. Ata ndjekin të njëjtën konventë të C
për të kopjuar dhe V
për të futur.
Po të njëjtat tastierë funksionojnë në shumicën e aplikacioneve grafike Linux, si p.sh. gedit i redaktuesit ose paketa e zyrës LibreOffice.Ctrl+C
kopjon tekstin e theksuar dhe Ctrl+V
e ngjis në kursori. I sapoardhuri ynë në Linux ndoshta as që mendon për faktin se këto konventa janë kryer në këto aplikacione. Ata përdorin goditjet e tasteve nga kujtesa e muskujve dhe vazhdojnë me punën e tyre.
Sapo i porsaardhuri ynë hap një dritare terminali dhe përpiqet të kopjojë dhe ngjitë në vijën e komandës së guaskës Bash, gjithçka ndryshon. Ctrl+C
dhe Ctrl+V
u ndanë funksione shumë kohë përpara se të mendohej kopjimi dhe ngjitja. Në fakt, ato goditje të tasteve u rekrutuan shumë kohë përpara se të shpikeshin predha grafike, atëherë kur teletipi (TTY) ishte një gjë fizike.
Ctrl+C dhe Ctrl+V në TTY
Kur një TTY ishte një pajisje fizike, Ctrl+C
u zgjodh si një kombinim kyç i dobishëm për të gjeneruar një sinjal. Ky sinjal është SIGINT, i cili tregon që procesi aktual të përfundojë. Për shkak se një dritare terminali është një TTY i emuluar, ai kombinim i tastierës (dhe shumë të tjerë) janë ruajtur dhe riprodhuar në emulim. Vini re se është dritarja e terminalit që është emulimi. Predha Bash është një program që funksionon në atë TTY të emuluar.
Ne mund t'i shohim lehtësisht funksionet që i janë caktuar Ctrl+C
dhe Ctrl+V
. Supozoni se shkruani komandën e mëposhtme dhe shtypni Enter.
ls -R /
Për shkak se ne përdorim opsionin -R
(rekurziv), komanda ls
do të fillojë të listojë çdo skedar dhe drejtori, duke filluar nga direktoria rrënjësore. Pas disa çastesh, kuptoni se kjo nuk është ajo që dëshironit, kështu që e përfundoni procesin duke shtypur Ctrl+C
.
Ctrl+C
Procesi ls
përfundon. Dëshmia e dukshme e Ctrl+C
theksohet në pamjen e ekranit. Shfaqet si ^C
.
Kombinimi i tastit Ctrl+V
thërret fut fjalë për fjalë. Kjo ju lejon të futni një paraqitje të një çelësi në atë që po shkruani, në vend që të merrni efektin të çelësit. Për ta parë këtë, provoni komandat e mëposhtme (mos shkruani presjet). (Për shembull, për të provuar të parën, shtypni Ctrl+V dhe më pas shtypni Enter.)
Ctrl+V, Enter
Ctrl+V, PgDn
Ctrl+V, RightArrow
Ctrl+V, Esc
Për më tepër, mund të vëreni se Enter përfaqësohet nga ^M
. Ne pamë më herët se Ctrl+C
u shfaq si ^C
. Duket se ^
përfaqëson Ctrl
. Pra, Ctrl+M
ndoshta do të thotë njësoj si Enter. A do të thotë kjo se ne mund të hyjmë Enter duke shtypur Ctrl+M
? Provojeni në një dritare terminali. Do të shihni që po bën.
Pra, qartësisht nuk mund të presim që Ctrl+C
dhe Ctrl+V
të kryejnë kopjimin dhe ngjitjen e tekstit kur tashmë kanë funksione të respektuara nga koha. Pra, çfarë mund të përdorim?
Ctrl+Shift+C dhe Ctrl+Shift+V
Mbaj mend lehtë sepse janë shumë të ngjashëm me homologët e tyre, Ctrl+Shift+C
dhe Ctrl+Shift+V
janë zëvendësime të drejtpërdrejta për Ctrl+C
dhe Ctrl+V
.
Nëse nënvizoni tekstin në dritaren e terminalit me miun dhe shtypni Ctrl+Shift+C
, do ta kopjoni atë tekst në një tampon të kujtesës.
Ctrl+Shift+C
Mund të përdorni Ctrl+Shift+V
për të ngjitur tekstin e kopjuar në të njëjtën dritare terminali ose në një dritare tjetër terminali.
Ctrl+Shift+V
Ju gjithashtu mund të ngjitni në një aplikacion grafik si gedit
. Por vini re, kur ngjisni në një aplikacion—dhe jo në një dritare terminali—duhet të përdorni Ctrl+V
.
Dhe mund të shkoni edhe nga ana tjetër. Mund të theksoni tekstin në gedit
dhe të shtypni Ctrl+C
dhe më pas ta ngjisni në një dritare terminali duke përdorur Ctrl+Shift+V
.
Kombinimi i tasteve Ctrl+Insert
është i njëjtë me Ctrl+Shift+C
dhe kombinimi Shift+Insert
është i njëjtë me Ctrl+Shift+V
. Paralajmërimi këtu është se këto mund të përdoren vetëm brenda të njëjtës dritare të terminalit.
Përdorimi i miut: Klikoni me të djathtën
Mund të përdorni miun për të kopjuar dhe ngjitur në një dritare terminali. Duhet të përdorni miun për të theksuar tekstin që do të kopjoni, kështu që pse të mos e përdorni për të kryer veprimet e kopjimit dhe ngjitjes?
Pasi të keni theksuar disa tekst, kliko me të djathtën me miun dhe zgjidhni Kopjo nga menyja e kontekstit.
Për të ngjitur tekstin e kopjuar, klikoni me mausin me të djathtën edhe një herë dhe zgjidhni Paste nga menyja e kontekstit.
Teksti ngjitet në pozicionin e kursorit në vijën e komandës. Në këtë shembull, rruga relative është dhënë gabimisht dhe Bash nuk mund të ndryshojë direktoriumin. Përdoruesi humbi ~/ që nga fillimi i shtegut. Ata kanë shtypur ~/ dhe më pas kanë kopjuar pjesën e mbetur të shtegut nga përpjekja e tyre e mëparshme dhe e kanë ngjitur në linjën e tyre të dytë të komandës.
Kur godasin Enter, ato zhvendosen në drejtori.
Ky shembull tregoi ngjitjen në të njëjtën dritare terminali, por ju mund të përdorni këtë teknikë të klikuar me të djathtën për të ngjitur në dritare të ndryshme terminali. Ju gjithashtu mund të ngjitni në aplikacione grafike duke përdorur këtë metodë.
Përdorimi i miut: Butoni i mesëm
Ekziston një mënyrë edhe më e shpejtë për të kopjuar dhe ngjitur duke përdorur miun, për sa kohë që miu juaj ka një buton të mesëm. Nëse shtypni rrotën tuaj të lëvizjes (butë!) dhe ajo klikon, ju keni një buton të mesit.
Theksoni një tekst në një dritare terminali dhe më pas shtypni butonin e mesit. Teksti i theksuar ngjitet në pozicionin e kursorit në vijën e komandës. Kopjimi dhe ngjitja ndodhin në të njëjtën kohë.
Pra, nënvizoni një tekst:
Pastaj shtypni butonin e mesit:
Ju mund ta përdorni këtë metodë për të ngjitur midis dritareve të terminaleve të ndryshme dhe gjithashtu në aplikacione grafike. Thjesht theksoni tekstin, kaloni në dritaren ose aplikacionin tjetër të terminalit dhe shtypni butonin e mesit.
Old School - Pa mouse
Po kur nuk ke mi? Nëse nuk mund të theksoni ndonjë tekst, si mund ta kopjoni dhe ngjitni atë?
Serverët Linux shpesh konfigurohen pa një mjedis grafik desktopi (GDE), që do të thotë se nuk keni akses në një mouse. Edhe në një kompjuter Linux që ka një mjedis desktop grafik si GNOME dhe ju keni një mi, do të ketë raste kur nuk mund ta përdorni miun për të theksuar tekstin.
Për shembull, ju mund të keni ndërruar në një nga TTY-të shtesë. Në shpërndarjet moderne, këto ndodhen në Ctrl+Alt+F3
(TTY3) deri në Ctrl+Alt+F6
(TTY6). (Ctrl+Alt+F2
do t'ju kthejë në sesionin tuaj GDE dhe Ctrl+Alt+F1
do t'ju çojë në ekranin e hyrjes së GDE-së tuaj.)
Ndoshta po përdorni edhe një pajisje të vërtetë TTY harduerike për t'u lidhur me një kompjuter Linux ose Unix.
Sido që të jetë, këto teknika do të funksionojnë për ju. Pika për t'u mbajtur mend këtu është se kjo nuk është kopjo dhe ngjit, por është prerje, kopjoni dhe ngjit, dhe ju mund të prisni dhe kopjoni vetëm nga linja aktuale e komandës . Sigurisht, ju mund të përdorni tastet e shigjetave për të lëvizur nëpër historikun tuaj për të gjetur vijën e komandës nga e cila dëshironi të prerë, kopjoni dhe ngjitni.
Prerjet e tasteve që mund të përdorni janë:
- Ctrl+W: Pritini fjalën përpara kursorit dhe shtojeni atë në tampon e kujtesës.
- Ctrl+K: Pritini pjesën e rreshtit pas kursorit dhe shtojeni atë në tampon e kujtesës. Nëse kursori është në fillim të rreshtit, ai do të presë dhe kopjojë të gjithë rreshtin.
- Ctrl+U: Pritini pjesën e rreshtit përpara kursorit dhe shtojeni atë në tampon e kujtesës. Nëse kursori është në fund të rreshtit, ai do të presë dhe kopjojë të gjithë rreshtin.
- Ctrl+Y: Ngjit tekstin e fundit që është prerë dhe kopjuar.
Le të kalojmë te TTY3. (Përdorni Ctrl+Alt+F1 për t'u kthyer në desktop më pas.)
Ctrl+Alt+F3
tty
Ne kemi një skedar që dëshirojmë ta fshijmë, le të kontrollojmë se është këtu.
ls -l file_to_delete.txt
Nëse përdorim tastin me shigjeta lart, do ta quajmë komandën e fundit që kemi përdorur jashtë historikut të komandave. Ne thjesht mund ta modifikojmë këtë rresht, por qëllimi është të demonstrojmë prerjen, kopjimin dhe ngjitjen, kështu që ne do të kryejmë detyrën tonë për të fshirë skedarin në një mënyrë paksa të zgjatur.
Do ta zhvendosim kursorin në shkronjën e parë të emrit të skedarit dhe më pas shtypim Ctrl+K
. Kjo do të heqë atë pjesë të rreshtit dhe do ta kopjojë tekstin në buferin e clipboard.
Do të shtypim Backspace derisa të pastrojmë vijën.
Do të shkruajmë rm
për të fshirë skedarin.
Dhe tani mund të shtypim Ctrl+Y
dhe të ngjisim në pjesën e mbetur të rreshtit.
Kjo përfundon komandën tonë dhe ne mund të shtypim Enter për të fshirë skedarin.
Ky lloj prerjeje, kopjimi dhe ngjitja nuk mund të përdoret midis TTY-ve shtesë. Ju nuk mund të prisni, kopjoni dhe ngjitni midis TTY3 dhe TTY4, për shembull.
TTY-të shtesë mendohen më së miri si një linjë TTY-sh fizike të ulura krah për krah. Nuk ka asnjë mënyrë për të prerë dhe ngjitur midis terminaleve të ndryshëm fizikë dhe nuk ka asnjë mënyrë për ta bërë këtë në këto emulime.
Kopjoje atë, kontrollo
Cilado situatë në të cilën gjendeni kur përdorni një kompjuter Linux, do të ketë një mënyrë për të kopjuar dhe ngjitur. Ju keni opsione. Disa prej tyre janë opsione të çuditshme, por të paktën ka opsione.
Linux Commands | ||
Files | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut · find · umask · wc | |
Processes | alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg · pidof · nohup · pmap | |
Networking | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw · arping · firewalld |
RELATED: Best Linux Laptops for Developers and Enthusiasts