Jeg er en af dem, der bruger meget af tiden terminal (konsol, bash, shell, uanset hvad du vil kalde det), af X- eller Y-grunde skal jeg konstant skifte bibliotek og arbejde på det 🙂
I langt de fleste tilfælde skifter biblioteksændring (For eksempel: cd / opt /) og også vil jeg vide, hvad der er i denne mappe, at kende dette sekund, jeg bruger ls.
Det vil sige, det ville være sådan:
kzkggaara @ geass: ~ $ cd / opt /
kzkggaara @ geass: / opt / $
kzkggaara @ geass: / opt / $ ls
Nessus
Jeg har sagt det mange gange... Jeg er ret doven, jeg kan godt lide at lave så få trin som muligt i terminalen, derfor har jeg efter en masse eksperimenter opnået præcis det jeg ville.
Se følgende, hvilket ikke er andet end jeg går ind / Opt / med den enkle kommando cd / opt /:
Som du kan se, i et trin (cd / opt /) Jeg går ind i biblioteket og OGSÅ viser det indholdet i den mappe, og ... som om det ikke var nok, viser det det for mig med farver 😀
Her er eksemplet med, at jeg åbner /etc/ med cd / osv/:
Ingen farve = Filer
Farve blå = Mapper
Grøn farve = Filer med eksekveringstilladelser
Men lad os gå videre til de vigtigste ... Hvordan kan jeg også bare bruge cd til automatisk at liste den mappe, som jeg har adgang til?
Vores arkiv .bashrc (placeret i vores hjem eller personlige mappe) hjælper os med at gøre dette, skal vi først erklære en funktion, som vi vil kalde CDLS:
funktion cdls {cd "$ 1"; ls –farve;}
Vi sætter denne linje på begge sider af vores .bashrc ... her er kommandoen til at gøre det:
echo "" >> $HOME/.bashrc && echo "function cdls { cd "$1"; ls --color;}" >> $HOME/.bashrc
Du behøver IKKE nødvendigvis at gøre det med denne kommando, målet er, at filen .bashrc indeholder denne linje, så rediger bare denne fil med din foretrukne teksteditor (musemåtte, kate, gedit, nano, vi osv) og tilføj det.
De gemmer ændringen, lukker terminalen, de har åbnet, og åbner en ny.
I det vil vi skrive følgende og trykke på [Gå ind]:
cdls $HOME
Dette skal være nok til at få adgang til vores personlige mappe i terminalen, og den vil også angive dens indhold (med farver og alt).
Jeg mener, hvad CDLS det gør allerede, hvad vi vil ... nu kan vi kun opnå det samme, men med cd
Til dette tilføjer vi i filen .bashrc følgende linje:
alias cd='cdls'
Dette vil gøre, når vi skriver cd ... Den handling, som vi definerer, vil faktisk blive udført for CDLS
Jeg forlader kommandoen, der automatisk placerer denne forrige linje:
echo "" >> $HOME/.bashrc && echo "alias cd='cdls'" >> $HOME/.bashrc
Men ligesom jeg sagde før, er målet at tilføje denne anden linje til den samme fil, du kan bruge teksteditoren efter eget valg til den.
Når dette er gjort, skal du lukke terminalen og åbne en ny ... i den skal du skrive følgende og trykke på [Gå ind]:
cd /etc/
Og bingo, de kommer ind / Etc/ og også indholdet af denne mappe vil blive vist, og med farver 😉 (ligesom i et tidligere foto)
Hvad er det nyttigt til? 😀
For de nysgerrige, der spekulerer på, hvad betyder denne funktion? ... Jeg efterlader dig den enkle forklaring:
funktion cdls = Her definerer vi, at vi opretter en ny funktion, og den kaldes cdls
cd "$ 1" = Og hvad denne funktion vil gøre (den vil gøre hver gang vi kalder, bruger eller udfører den) er at lave en cd (enter) mod den første parameter, det vil sige ... - »« cd / home / », den« $ 1 »betyder« hvad vi skriver efter cd ", i dette eksempel er den første parameter" / home / ".
; = Dette betyder, at ordren slutter der, eller handling, der skal udføres ... men en funktion kan have flere handlinger at gøre, og vi definerer en anden nu.
ls –farve; = Det betyder, at det ud over enhver handling, der er erklæret før, også opretter et "ls", hvor vi er placeret, og "ls" vil gøre det med farve (–farve).
Sidste ting... de smarteste vil indse, at denne logik (at tage en funktion og konfigurere den til at udføre flere handlinger) har en masse, en masse potentiale, for eksempel... hvis jeg vil indtaste en mappe og også slette en anden, det vil sige, jeg vil indtaste en mappe /hjem/ og også slette / opt / temp / funktionen til dette ville være:
function asdasd { cd "$1"; rm -Rv "$2"; }
Og at skrive i en terminal asdasd / hjem / / opt / test / det ville, fordi det vil indtaste den første parameter (/hjem/) og slet den anden (/ opt / temp /).
Under alle omstændigheder har dette virkelig MEGET potentiale hehe, det er op til dig at udnytte det så meget som muligt.
Hvis du er i tvivl eller spørgsmål, klager eller forslag, hjælper jeg dig gerne, jeg er på ingen måde ekspert, men jeg vil i hvert fald gerne hjælpe 😀
hilsen
Og alt dette for ikke at bruge Zsh.
Jeg kendte ham ikke rigtig 😉
Tak for tipet, jeg holder øje med det.
Imidlertid finder viden ikke sted ... jo flere tip og viden man formår at tilegne sig, jo bedre synes du ikke? 🙂
Zsh er til queers, mænd bruger sh !!! >: D
I virkeligheden
HAHAHA nej nej nej ... Jeg tror ikke det, og sig det heller ikke sådan, for nogle kan blive fornærmet.
Alle bruger det, der er bedst for dem, hvad de kan lide mest 😀
😉
En app, som jeg bruger meget til at navigere i mit system, er Autojump:
https://github.com/joelthelion/autojump/blob/master/README.md
Mænd er praktiske, kvinder og skeive er dem, der kan lide at komplicere deres liv. Der kræves ingen yderligere afklaring.
Prøv ikke at kommentere seksuelle præferencer ja? ... Der har været ubehagelige situationer for denne slags ting.
Håber det er forståeligt.
Denne afklaring skal være @msx. Idéer er bygget med sandfærdige, objektive og rationelle udsagn, ikke med fornærmelser eller uhøflighed.
I min kommentar ovenfor bad jeg ham om ikke at sige disse ting (tilgiv redundansen).
Og nu siger jeg ja igen, men ikke kun rettet mod dig, det er gyldigt for alle.
Tag det ikke den forkerte måde, hensigten var ikke at få nogen til at føle sig ubehagelige eller dårlige, jeg prøver bare at undgå misforståelse 🙂
Hahaha, jeg så lige denne kommentar!
«Denne afklaring burde være for @msx. ideer er konstrueret med sandfærdige, objektive og rationelle udsagn, ikke med fornærmelser eller uhøflighed. "
Stop med at spise morgenmad med citroner mand, du ser allerede ud som Franklin på $ 100-regningen: http://www.watchingamerica.com/frankfurterallgemeine000009.shtml
????
Nå, jeg tror, jeg kan godt lide at være queer da, for siden jeg lærte at bruge det, er jeg ikke stoppet, og det har jeg ikke tænkt mig at gøre. o_____o
Bruger mænd sh?, Den kommentar er underlig, der kommer fra nogen, der har en bashrc fuld af ting, så jeg antager, at du er en kvinde. xP
Dette er, hvad jeg ikke ønskede at komme til. Lad os forlade kampen her, ja? 🙂
Alle bruger hvad de vil ... sh, zsh, eller hvad de vil, og også ... alle har de seksuelle præferencer, de vil have, der har allerede været kamp her for ting som det 🙁
hahaha xD
For nylig har zsh udviklet sig meget, så snart jeg har tid - ha, hvor vildfarende! - Jeg vil læse så meget jeg kan af dokumentationen for at drage fordel af det og foretage ændringen 🙂
Nu taler vi seriøst: det eneste, der generer mig lidt ved zsh er, at det ikke er 100% kompatibelt med Bash, så hvis vi bruger zsh i vores scripts, der udnytter sit fulde potentiale, er det meget, meget muligt, at det nævnte script fejler på den anden side bash På den anden side, selvom vi bruger zsh, skriver vi vores shell-scripts i bash, er det spild at bruge zsh ... o_O
Alligevel synes jeg, det er værd at zsh. Apropos skal, kender du fisk? Projektet steg fra asken, nu kaldes det fiskfisk, og de udvikler det meget hurtigt.
Jeg synes, at zsh skal skrives, da terminalen er meget store og små bogstaver
Selvom cd && ls / rute også er gyldig
Selvom det er længere at skrive
Hilsner 😀
Jeg tog fejl, min finger slukkede
Jeg siger, at med dette er det opført, og der er adgang til en mappe
cd && ls / sti
men bare gør dig klar
selvom det kun bruges til at liste det
ls / sti
kommandoen, der svarer til, er
cd / sti && ls
hilsen
Brug && det samme opnås faktisk 😀
Den eneste forskel er, at "cd / opt / && ls" har 6 flere tegn end bare "cd / opt /", det vil sige, jeg bliver nødt til at trykke på 6 flere taster ^ - ^ U ... jeg er lidt doven for ting som det hehe.
Derfor sluttede jeg mig til cd + ls ... LOL !!
Hvad jeg også bruger er, at jeg filtrerer resultaterne efter udvidelser.
Ejemplo
Jeg har mange filer i ~ / Downloads mere end 100, og jeg vil kun se .png-filerne for at gøre dette.
cd Downloads && ls * png
Hvad skal jeg tilføje eller gøre for at filtrere resultaterne i enklere kode?
hilsen
Simpelt 😉
Du opretter en funktion, der f.eks. cdlsf:
function cdlsf { cd "$1"; ls *.$2; }
At bruge det ville være:
cdlsf / opt / png
Og dette vil kun vise dig filerne . Png en / Opt /
Det vil sige den første parameter (i eksemplet / Opt /) ville være den mappe, du vil have adgang til, og den 2. parameter (i eksemplet png) ville være den udvidelse, du vil filtrere, når du viser biblioteket.
Et andet eksempel, hvis du vil gå til / home / user / Pictures og kun se de filer, der er .JPG, ville det være:
cdlsf / hjem / bruger / Billeder jpg
????
Dette var hvad du ville, ikke?
PS: Jeg sætter cdlsf til cd (enter) ls (liste) f (filter) ... men selvfølgelig kan du kalde funktionen hvad du vil.
zsh er ikke POSIX, og til sidst tager det længere tid at starte, så jeg foretrækker at være fag, men mere effektiv
Først i zsh kan du aktivere POSIX-support. For det andet tager det tid at starte i henhold til hvor mange funktioner du indlæser ved opstart, så det kan være så let som du vil. For det tredje er man med zsh mere praktisk og effektiv end med nogen anden skal. For det fjerde skal du bruge det, før du kritiserer.
5. plads Når du aktiverer POSIX-support, giver det ingen mening at bruge ZSH.
Jeg har brugt det i et stykke tid, det er det ikke værd, sh er kort og Bash er perfekt, der er intet, du ikke kan gøre i Bash med de rigtige aliaser og funktioner.
Jeg kan virkelig godt lide emnet. faktisk skal de oprette en mere omfattende artikel om de kommandoer, der generelt kan bruges i terminalen og i specifikke distroer, som f.eks. Chakra.
Se på dette indlæg 😉
https://blog.desdelinux.net/mas-de-400-comandos-para-gnulinux-que-deberias-conocer/
Jeg fandt det meget interessant, bortset fra at lære dette trick, har du forklaret, hvordan hver kommando fungerer.
Jeg har fulgt dig siden jeg startede i Linux-verdenen (ikke for længe siden ...) og jeg er blevet opfordret til at kommentere bare for at lykønske dig med artiklen 😉
Tak fordi du kom forbi og efterlod os kommentaren 😀
Hver gang jeg vover at forklare noget, kan jeg godt lide at gøre det så klart som muligt ... Nå, jeg ved meget godt, hvad det er at læse vejledninger på internettet og slet ikke forstå noget hahaha.
Velkommen to gange ... velkommen til verdenen af Tux haha, og også velkommen til bloggen 🙂
Hvis du har spørgsmål, ved du det, så giv os besked hehe.
Hilsner og tak for kommentaren ^ ⁻ ^
Jeg har lige læst dit indlæg fra et andet websted, og jeg kunne ikke modstå:
Ville det ikke være lettere, bare opret et alias inde i .bashrc?
alias cd = 'ls'
Faktisk er det, jeg prøver at opnå, at gå ind i en mappe X (/ opt / ... / home / user / ... uanset hvad) og også når jeg går ind i den, viser den automatisk indholdet af den mappe.
Lav det hele med 1 enkelt trin eller kommando.
Opretter et alias, som du angiver, så vil jeg liste biblioteket, ja, men jeg vil ikke gå ind i det.
Fra hvad jeg forstår, er målet med at gøre alt dette, at hvis du f.eks. Vil indtaste "/ etc" gennem kommandoen "cd", når du kommer ind, vil det automatisk vise dig indholdet af den mappe, ikke?
I så fald kan du forenkle funktionen til et "alias", hvor inde i .bashrc du lægger:
alias cd = »ls»
Med dette, når du er i en terminal, bruger du:
cd / osv
Du kommer ind i biblioteket «/ etc», og det viser automatisk alle de filer og mapper, der er der.
Hvis jeg misforstod målet, en undskyldning 😛
I virkeligheden vil jeg gå ind i en mappe og en gang inde i den, liste hvad den indeholder.
Jeg prøvede, hvad du siger, og erklærede, at cd = ls blev aliaset, men det fungerede ikke for mig.
Jeg konfigurerer det selv, og så gør jeg:
cd / etc /
Men det viser / etc / ... men det går ikke ind i den mappe.
Jeg efterlader et skærmbillede, så du kan se: http://img204.imageshack.us/img204/5272/cdlserror.png
Min fejl 😀
Det var tydeligt, at det ikke ville fungere sådan, og selv da jeg prøvede en:
alias cdls = 'cd $ 1; ls'
Af en eller anden mærkelig grund virker det ikke, det viser bare biblioteket, men går ikke ind i D:
Bash fejl? xD
En undskyldning for de meningsløse kommentarer! 😀 Og jeg tager funktionen til min bashrc 😛
Et alias er ikke det samme som en funktion, et alias, hvis du vil have det til at være det samme som flere kommandoer, skal du bruge && ... det er ikke som i funktioner, at bruge; og at skrive flere instruktioner fungerer for dig.
HAHA nah for intet ven, intet at undskylde 😀
hilsen
PS: ... forbandet ... hvor nostalgisk bliver jeg, når jeg ser Arch-logoet ... T_T ...
Jeg ved, at det ikke er det samme, men jeg regnede med, at det ville fungere (Fejl: P)
Kun det at bruge «;» virker for mig. i stedet for "&&" inde i et alias D: (Jeg har to aliaser som dette, hvad jeg ikke forstår er hvorfor det ikke fungerer med det alias, jeg ville oprette til denne sag)
Tak og forresten, jeg tror, jeg bliver på bloggen under titlen "hyppig læser" 😀 Jeg kunne virkelig godt lide indholdet af bloggen 😛
oooh ja jeg ved, jeg adskiller mig nogle gange fra min kære Arch, men jeg ved ikke hvorfor, det er altid umuligt for mig ikke at vende tilbage til ham xD
Greetings!
Nå ... Tux er mystisk, han gør ting og mange gange forstår vi ham ikke, men han har en plan eller et formål for alle ... HAHA 😀
En fornøjelse at læse, hvad du siger, en anden Arch-bruger, der tilmelder sig bloggen hahahaha ... en fornøjelse 😀
Jeg var nødt til at stoppe med at bruge det på grund af meget mærkelige problemer, som kernen gav mig ... men det indtager stadig et sted i mit hjerte 🙁
LOL
Jeg har ikke mødt Arch-bruger, der ikke har stor kærlighed til distributionen, han har "Jeg ved ikke hvad, hvad ved jeg": P, måske og hvis de problemer, jeg gav dig, var for længe siden, du kunne tænke på at gå tilbage til Arch 😀
Forresten vidste jeg, at jeg et andet sted allerede havde læst dit navn (ja, kaldenavn, pseudonym, kaldenavn, hvad som helst), du er en del af forfatterne af desktop-kunst, ikke? 🙂
Jeg læste for dem 🙂
Faktisk for at liste indholdet af en mappe er det ikke nødvendigt at indtaste det, så jeg tror ikke, at det eksempel, du har valgt, er det lykkeligste, hehe. Med det sagt kan funktioner bruges til mange nyttige ting.
For eksempel bruger jeg denne funktion til at oprette en mappe og indtaste den med det samme (validering af, at kun en parameter bruges):
function mkcd () {
FNERR="Parametros incorrectos.\nUso: mkcd "
if [ $# -eq 1 ] ; then
mkdir -p "$1" && cd "$1"
else
echo -e $FNERR
fi
}
Hmmm ... bloggen spiste en del af kommandoen, jeg prøver at sætte den ufuldstændige linje med HTML-tags:
FNERR="Parametros incorrectos.\nUso: mkcd <nombre del directorio a crear>"
Hvad jeg ønskede at opnå var at gemme et skridt.
Antag med andre ord, at jeg vil indtaste en mappe (/ etc / squid /) og derefter redigere en fil i den mappe, og jeg kan ikke huske navnet på filen.
Trinene vil normalt være:
cd / etc / blæksprutte /
ls
nano.conf-fil
Men med dette tip, som jeg foreslår, konverterer jeg kun de første 2 trin til 1, så det blot ved at gøre:
cd / etc / blæksprutte /
Det viser automatisk også indholdet af biblioteket for mig.
Det handler simpelthen om at gemme et trin 😀
Du forstår mig?
... er, at jeg har svært ved at forklare haha.
Nej, forklaringen havde ikke noget problem, jeg mente, at det eksempel, du valgte at illustrere tipset, måske ikke var ideelt, da man kan lave en simpel "ls-mappe".
Så snart jeg så funktionen, forstod jeg formålet. Jeg bruger også forskellige funktioner i min .bash_aliaserFor eksempel er dette en, som jeg bruger meget til at styre historikken:
h () {
if [ $# -eq 0 ] ; then
history | tail -n 25 | less
elif [ $# -eq 1 ] ; then
history | egrep -i "$1" | less
else
echo -e "Parametros incorrectos."
fi
}
(Med denne funktion, hvis jeg bare sætter det h Jeg får de sidste 25 kommandoer, men hvis jeg f.eks h montering Jeg får de sidste kommandoer relateret til forsamlinger).
Jeg tager din rolle hehehe ... det fortjener at studere det 😀
fantastisk din funktion! tak
+1
KZKG ^ Gaara
Meget godt svar, det tjente mig meget godt, jeg kunne ikke svare på det allerede ovenfor
Nu bruger jeg cdlsf til at øge min produktivitet, meget godt navn til en kommando 😀
hilsen
Som du gør for at indstille tiden til terminalen, havde jeg allerede gjort det før, det var en bashrc, som jeg downloadede, men jeg kan ikke huske, hvad den hed.
God indrejse, jeg kendte ikke tricket, jeg vil sætte det i praksis for at se, hvordan det fungerer. xP
Greetings.
Det ville være rart, hvis min browser blev tilføjet. xD
Hilsen igen. xD
Hvilken browser bruger du?
Nå, i en anden kommentar så jeg, at du brugte Firefox 🙂
Ja, jeg bruger Firefox, men det er mindre og mindre, og det er ikke længere min hovedbrowser, jeg bruger dwb, og det ville være godt, hvis det kunne tilføjes. xP
Greetings.
Og vil dette alias ikke forårsage problemer i scripts, når du prøver at bare cd og også output ls? Jeg foretrækker især at lave aliaser med navne, som andre eksekverbare filer ikke bruger, fordi det ikke er første gang, det giver mig problemer ...
Hvordan får du de stiplede linjer og tiden efter hver kommando?
Se her - " https://blog.desdelinux.net/con-el-terminal-mejorando-la-apariencia-de-la-consola-actualizado/
Mit bidrag:
alias ldir = 'ls | grep -v \\. ' ## lister kun mapperne (pas på, omdøb det ikke til ld, da der er en GNU / Linux-kommando med det navn)
-
alias ll = 'ls -lah –farve | awk '\ »{k = 0; for (i = 0; i <= 8; i ++) k + = ((substr ($ 1, i + 2,1) ~ / [rwx] /) * 2 ^ (8-i)); hvis (k) printf ("% 0o", k); print} '\' ''
Det interessante ved dette alias er det ulejlighed, der analyserer output af ls, resultat? Det viser filtilladelserne i oktalt format ved siden af rwx, for mig uendeligt mere praktisk og hurtigere end bogstaver.
-
alias lg = 'ls -lah –farve | awk '\' '{k = 0; for (i = 0; i <= 8; i ++) k + = ((substr ($ 1, i + 2,1) ~ / [rwx] /) * 2 ^ (8- i)); hvis (k) printf ("% 0o", k); print} '\' '| grep -i'
Variant af aliaset ovenfor. Jeg tilføjede en grep i slutningen, så på denne måde når jeg for eksempel gør:
$ LG lynlås
Vis mig kun de filer, der indeholder zip i nogen af dens formularer (bemærk -i i slutningen) ud over de oktale tilladelser osv.
-
alias grep = 'grep –color = auto' ## farver grep-matchningen
-
Jeg har mange flere at dele, men dette lille sted gør mig stram xD
@KZKG, personale: Tror du, at du åbner et indlæg på bloggen eller på forummet (som vi linker til hver gang et tip relateret til konsollen offentliggøres) for at samle alle disse små perler?
Greetings!
Med link mener du dette? - » https://blog.desdelinux.net/tag/bash
Jeg sagde ikke noget, intet af resten er nødvendigt, alt er perfekt tagget!
Hvilken chilener, det er en meget god funktion!