1. Utfør den siste kommandoen med !!
Tittelen sier alt, bare skriv inn følgende i en terminal ...
!!
... For å utføre den siste kommandoen på nytt. Dette trikset er veldig nyttig når vi glemmer å komme inn sudo i begynnelsen. I så fall må du oppgi:
sudo!!
For å oppdage mer komplekse måter å få mest mulig ut av dette trikset, anbefaler jeg å lese dette gammelt innlegg.
2. Utfør den siste kommandoen, men korriger en skrivefeil
Dette trikset er veldig nyttig når vi skriver inn en kommando med en enkel skrivefeil. For eksempel hvis vi løper:
ekko "desdelinuxz"
Du kan rette det ved å skrive inn følgende:
^z
3. Start en tekstredigerer for å legge inn en lang kommando
Noen ganger må du angi endeløse kommandoer i terminalen. I så fall kan hjelpen fra en enkel tekstredigerer, for eksempel nano eller emacs, være nyttig.
For å åpne redaktøren, trykk bare på Ctrl + x + e i en terminal. Teksten du har skrevet inn så langt, blir kopiert til tekstredigereren når den er åpnet.
For sin del vil redigereren som brukes være den som er spesifisert i $ EDITOR-variabelen. For å endre denne konfigurasjonen er det mulig å utføre ...
eksportredaktør = nano
... Erstatter nano med din foretrukne redaktør.
4. Utfør en kommando uten å lagre den i historikken
En ekte hacker kan ikke ignorere dette trikset. Som du alle vet, lagrer bash historikken til utførte kommandoer, som er veldig lett å få tilgang til ved hjelp av tastaturpilene eller Ctrl + R (å utføre en omvendt søk i historien).
I dette tilfellet er det du må gjøre for at den angitte kommandoen ikke skal lagres i historikken, å sette mellomrom foran:
kommando
5. Plasser automatisk den siste parameteren i en kommando
Anta at kommandoen som ble utført tidligere var
cp file.txt / var / www / wp-content / uploads / 2009/03 /
For å få tilgang til den aktuelle katalogen, kan du skrive inn kommandoen cd etterfulgt av Alt +. o Esc +. :
cd 'ALT +.'
Dette er ikke noe mer enn en kort måte å komme inn på:
cd / var / www / wp-content / uploads / 2009/03 /
6. Utfør en kommando til et bestemt tidspunkt
Ja, ja, det er det den eksisterer for cron. Noen ganger vil vi imidlertid kjøre en kommando for å kjøre på et bestemt tidspunkt, men bare en gang.
Anta at vi vil utføre kommandoen ls-l ved midnatt. I så fall må vi utføre det på følgende måte:
ekko "ls -l" | ved midnatt
7. Få din eksterne IP
Takk til tjenesten som tilbys av http://ifconfig.me/ Det er mulig å kjenne til forskjellige data om internettforbindelsen din direkte fra terminalen:
curl ifconfig.me/ip // IP-adresse curl ifconfig.me/host // Remote Server curl ifconfig.me/ua // User Agent curl ifconfig.me/port // Port
8. Lær hvordan du bruker Ctrl + u og Ctrl + y
Hvor mange ganger skjedde det med deg at du begynte å skrive en kommando og husket det før det var nødvendig å gjøre noe annet? Vel, det er mulig å gjøre en slags cut-paste slik at det senere er lettere å gå inn i kommandoen som var igjen halvparten.
Anta at du begynte å skrive ...
cd / hjem / bruker
og du husket det før du måtte sjekke noe i gjeldende katalog. Trykk i så fall Ctrl + u (Det ville være noe som et "kutt").
Skriv inn kommandoen som måtte kjøres først. Anta ...
ls-l
... og trykk deretter på Ctrl + y (Det fungerer som en "lim").
9. Rengjør terminalen enkelt
med Ctrl + l terminalen kan rengjøres raskt.
10. Gå til en katalog, kjør en kommando, og gå tilbake til gjeldende katalog
Dette trikset er en fryd. For å utføre en rekke kommandoer uten å forlate den nåværende katalogen, er det bare å gruppere dem i parentes. Som nesten alle vet, for å utføre en rekke kommandoer, må du sammenkoble dem ved hjelp av &&. Ved å bruke disse konseptene kan vi utføre noe sånt som følgende:
(cd / tmp && ls)
Resultatet av denne kommandoen (legg merke til parentesene) vil være en liste over filene og katalogene i mappen / Tmp. Alt uten å forlate vår nåværende katalog. En juvel!
Yapa. Liste over de mest brukte kommandoene
Å se dem mest brukte kommandoer bare utfør følgende:
historie | awk '{a [$ 2] ++} END {for (i in a) {print a [i] "" i}}' | sorter -rn | hode
I mitt tilfelle var vinnerne:
450 yaourt 415 sudo 132 git 99 cd 70 leafpad 70 killall 68 ls 52 pacman 50 xrandr 45 topp
For terminalvifter, som denne serveren, anbefaler jeg å besøke kommandolinjefu. Også, hvorfor ikke, ikke slutte å se på arkiv fra bloggen vår.
Det var en jeg brukte som utelatt store bokstaver i inputrc-en min, for ærlig talt ville mange filer som startet slik gli inn i meg.
Jeg tror en av de viktigste er historikkommandoen der den returnerer en nummerert liste
av kommandoene du har brukt, og hvis du vil bruke noen av dem, bruk bare følgende linje
! 22
som vil utføre kommandoen i historikken din på nummer 22 😀
Å søke etter en kommando med automatisk fullføring er
Ctrl + r
Jeg bruker også alltid Ctrl + r for å gjenta den siste kommandoen; Når den siste vises, kan du bla tilbake gjennom historikken ved å trykke Opp Pag (pil opp).
Hilsener.
God artikkel. Takk for at du delte disse tipsene.
Jeg vil dele en som jeg bruker daglig, som er 'fg', som lar deg åpne applikasjonene du stoppet tidligere med 'Ctrl + z'.
Og med 'bg' sender du dem til bakgrunn 🙂
Se på deg ... godt triks! Takk for at du delte den.
Klem! Paul.
Innlegget er utmerket, de får deg alltid til å huske ting du visste og til slutt glemte, men som er veldig nyttige.
Terminal cheats er alltid velkomne.
Utrolig visste jeg ikke at å legge til et mellomrom i kommandoen ble utelatt fra historien.
Tusen takk, Hilsen !!
for å bruke automatisk fullføring av filtreringshistorikk, legg til i $ HOME / .inputrc-fil
"\ E [5 ~": historie-søk-bakover
"\ E [6 ~": historie-søk fremover
og for eksempel på et tidspunkt du hadde brukt:
$ cd / en / bane / lengre / enn / dritten
og nå vil du bruke den igjen, du må gjøre:
$ cd
og trykk deretter på "Page Up" eller "Page Down" -tastene for å navigere gjennom alle kommandoene i historikken som startet med "cd".
ELLER…. Uten å redigere noe, trykk Ctrl + R og deretter cd (hvis du vil søke etter noe med 'cd') og ved å trykke Ctrl + R gjentatte ganger vil du se alle kommandoene som inneholder den til du kommer til den du vil ha. Åpenbart, hvis det er den som foregår umiddelbart, vil du få en.
Veldig bra!
Egentlig skal ls / tmp være nok til å liste katalogen uten å forlate den nåværende.
Du kan også sammenkoble kommandoen ved hjelp av ";" som i eksempel 10 vil det være slik:
(cd / tmp; ls)
Hilsen
Han ";" Det fungerer annerledes enn "&&" (og), når vi gjør kommando-1 && kommando-2, utføres den andre kommandoen bare hvis utgangen til den første er "0", det vil si uten feil. Når det gjelder semikolonet, utføres den andre kommandoen uavhengig av utdataene fra den første. For å utvide, er det operatøren «||» (eller), i dette tilfellet utføres den andre kommandoen bare hvis den første kaster en feil på utgangen. Hilsen.
Slik at hver linje som husker historie har dato og tid, er det en miljøvariabel i ~ .bashrc til den vanlige brukeren eller roten.
# nano .bashrc
eksporter HISTTIMEFORMAT = »% F% T»
# historie
492-2014-09 02 14:25:57 revdep-rebuild -i -v
493-2014-09 02 14:31:14 eclean-dist -d
494-2014-09-02 14:31:23 localepurge -v
495-2014-09 02 14:31:29 etc-oppdatering
496 2014-09-02 14:31:54 dukke opp –tømme - utgi
497-2014-09-02 14:39:08 oppdatertb
Det er flere alternativer, som er for mengden linjer det sparer, jeg tester dem.
Veldig bra innlegg. Virkelig veldig nyttig. Triks nummer 4, det å utføre en kommando uten at den ble lagret i historien, har bare fungert for meg i Ubuntu, ikke så i Debian eller Centos.
Det fungerte for meg på raspbian og ikke på arch.
Merveilleux!!
Hei,
hva skal du plassere et mellomrom før du utfører en kommando slik at den ikke er registrert i historikken, da den ikke fungerer ...
[bruker @ vert /] $ ls -l
Totalt 104
dr-xr-xr-x. 2 rotrot 4096 21. aug 03:55 bin
dr-xr-xr-x. 5 rotrot 3072 20. august 17:26 oppstart
drwxr-xr-x. 2 rotrot 4096 9. des 2013 cgroup
[bruker @ vert /] $ historie
1024 ls
1025 ls
1026 historie
1027 ls -l
1028 historie
interessant artikkel ..
En hilsen
Beklager, for ikke å lese alle innleggene,
Testen gjøres også i centos.
Bra med Ctrl + U og Ctrl + Y.
På systemet mitt fungerte listen over mest brukte kommandoer for meg ved å endre variabelen til $ 5.
Utdataeksempel:
1122 sudo
362 ls
279 klar
214 cd
142 graver
141 år
130 vnstat
122 mv
fredag 112
112 historie
Dette er fordi i .bashrc-filen har jeg følgende linje:
# Vis datoen til historikkommandoen
eksporter HISTTIMEFORMAT = '% F% T:'
Jeg er nesten sikker på at mange her borte har brukt flere terminaler samtidig.
Nå vet jeg ikke om jeg skal fortelle deg at det er et terminaltriks, men siden jeg vanligvis har mange vinduer eller bruker skjermen for å ha flere terminaler åpne, gjør dette en hvilken som helst kommando skrevet inn i en av disse terminalene, da den vil gjenspeiles i alle.
Dette går i .bashrc-filen:
HISTSIZE = 90000
HISTFILESIZE = $ HISTSIZE
HISTCONTROL = ignorerer space: ignoredups
historie () {
_bash_history_sync
innebygd historie "$ @"
}
_bash_history_sync () {
innebygd historie -a # 1
HISTFILESIZE = $ HISTSIZE # 2
innebygd historie -c # 3
innebygd historie -r # 4
}
PROMPT_COMMAND = _bash_history_sync
Veldig bra bidrag! Takk for bestått.
Klem! Paul.
Gratulerer med artikkelen.
Veldig praktisk og jeg har lært noen få kommandoer.
Selv om jeg allerede er litt "erfaren" i disse sakene, blir disse triksene alltid verdsatt, så ... for trunken!
flott, takk for triksene, de er veldig nyttige 😀
Konsollbanene er usynlige 😉
Trikset med å trykke på kontroll + u og kontroll + y avhenger ikke av skallet, men av konfigurasjonen som tty har. Til denne dag under Linux er tty veldig komplekse enheter, faktisk har jeg undersøkt driften av dem, og jeg kan forsikre at de har mange flere innsatser enn det ser ut til. Tty har noen kontrolltegn som endrer status, for eksempel har det noen ganger skjedd med meg at jeg katter en binær fil, og etter alt "søppel" vises på skjermen, er spørringen merkelig eller med en annen koding. Dette er fordi det i en tilfeldig fil er stor sannsynlighet for å møte tty kontrolltegn.
Kjør for eksempel dette i et skall:
skrive ut '33c'
Det vil rydde skjermen (som om du løper klar).
Andre kombinasjoner, for eksempel kontroll + L for å rydde skjermen, kommer fra selve skallet som brukes, de klassiske / søppelkassene gir vanligvis ikke denne funksjonen.
I tillegg er det i dag mange komplekse alternativer for håndtering av filer og stikkontakter under Linux. Hvis du for eksempel åpner en enhet med åpen () i AIO-modus (Asynchronous Input / Output), vil prosessen motta en SIGIO hver gang det er data tilgjengelig i inngangsbufferen.
Hvis for eksempel bash fungerer ganske enkelt ved å lese linjene og utføre kommandoer (som det gjør når du utfører et skript), når du trykker på kontroll + L, vil denne sekvensen av tegn ganske enkelt bli inkludert som en del av kommandoene, men siden bash har kontroll av bufferen for inngang kan oppdage den.
For eksempel, noen ganger når jeg programmerer, har jeg kommet til å bruke fcntl for å få en ikke-blokkerende inngangsbuffer, som jeg har brukt selv med ncurses-biblioteker (manipuler kontroll tty før du starter ncurses i programmet).
Saludos!
For de som ikke jobbet med plassen i begynnelsen, og kanskje for å legge den til notatet, er det en variabel kalt HISTIGNORE der tegnet som legges til før en kommando blir konfigurert slik at den blir ignorert i historikken.
I noen installasjoner kommer ikke denne variabelen fra
Hilsen og godt innlegg! direkte til favoritter!
Merk at i kommentarene så jeg også flere interessante ting .. !!
Alt veldig nyttig. Takk skal du ha.