Sem ena tistih, ki veliko časa uporablja terminal (konzola, bash, lupina, kakor koli želite), zaradi X ali Y moram stalno spreminjati imenik in delati na njem 🙂
V veliki večini primerov je sprememba imenika (Na primer: cd / opt /) in tudi jaz bi rad vedel, kaj je v tem imeniku, da bi vedel to sekundo, ki jo uporabljam ls.
To pomeni, da bi bilo tako:
kzkggaara @ geass: ~ $ cd / opt /
kzkggaara @ geass: / opt / $
kzkggaara @ geass: / opt / $ ls
nessus
To sem že večkrat povedal ... Sem precej len, rad naredim najmanj korakov v terminalu, zato sem po veliko eksperimentiranju dosegel ravno tisto, kar sem hotel.
Oglejte si naslednje, kar je nič drugega kot vstop / opt / s preprostim ukazom cd / opt /:
Kot lahko vidite, je v enem koraku (cd / opt /) Vstopim v imenik in TUDI seznam njegovih vsebin in ... kot da to ne bi bilo dovolj, mi ga pokaže z barvami 😀
Tu je primer mojega dostopa / etc / z cd / itd/:
Barve so preproste za razumevanje:
Brez barve = Datoteke
Modra barva = Mape
Zelena barva = Datoteke z dovoljenji za izvajanje
Ampak, pojdimo na glavno ... Kako hudiča lahko tudi samodejno navedem imenik, do katerega dostopam, samo s CD-jem?
Naš arhiv .bashrc (v naši domači ali osebni mapi) nam bo pri tem pomagal, najprej moramo prijaviti funkcijo, ki jo bomo poklicali cdl-ji:
funkcija cdls {cd "$ 1"; ls –color;}
To črto postavimo na obe strani naše .bashrc ... tukaj je ukaz, da to storite:
echo "" >> $HOME/.bashrc && echo "function cdls { cd "$1"; ls --color;}" >> $HOME/.bashrc
S tem ukazom vam tega NI nujno, cilj je datoteka .bashrc vsebuje to vrstico, zato samo uredite to datoteko z želenim urejevalnikom besedil (podloga za miško, kate, gedit, nano, vi itd) in ga dodajte.
Spremembo shranijo, zaprejo odprti terminal in odprejo novega.
Vanj bomo zapisali naslednje in pritisnili [vnesite]:
cdls $HOME
To bi moralo biti dovolj za dostop do naše osebne mape v tem terminalu, na njej pa bo navedena tudi njena vsebina (z barvami in vsem drugim).
Mislim, kaj cdl-ji že počne, kar hočemo ... zdaj lahko dosežemo samo enako, vendar z cd
Za to v datoteko dodamo .bashrc naslednja vrstica:
alias cd='cdls'
To bo, ko bomo pisali cd ... Dejanje, ki ga določimo, bo dejansko izvedeno cdl-ji
Zapustim ukaz, ki bo samodejno postavil to prejšnjo vrstico:
echo "" >> $HOME/.bashrc && echo "alias cd='cdls'" >> $HOME/.bashrc
Toda, kot sem že rekel, je cilj dodati to drugo vrstico v isto datoteko, zanjo lahko uporabite urejevalnik besedil po vaši izbiri.
Ko je to končano, zaprite terminal in odprite novega ... vanj napišite naslednje in pritisnite [vnesite]:
cd /etc/
In bingo, vstopili bodo / Etc/ in tudi vsebina te mape bo navedena in z barvami 😉 (tako kot na prejšnji fotografiji)
Za kaj je koristno? 😀
Za radovedneže, ki se sprašujejo, kaj pomeni ta funkcija? ... prepuščam vam preprosto razlago:
funkcijski cdls = Tu določimo, da ustvarjamo novo funkcijo in se bo imenovala cdls
cd "$ 1" = In kaj bo ta funkcija naredila (vsakič, ko jo pokličemo, uporabimo ali izvršimo) je narediti cd (enter) proti 1. parametru, to je ... - »« cd / home / »,« $ 1 »pomeni« tisto, kar napišemo za cd ", v tem primeru je prvi parameter" / home / ".
; = To pomeni, da se naročilo tam konča ali pa dejanje, ki ga je treba izvesti ... vendar ima funkcija lahko več dejanj, zdaj pa bomo določili drugo.
ls –barva; = To pomeni, da bo poleg kakršnega koli dejanja, prijavljenega prej, naredil tudi "ls", kjer se nahajamo, "ls" pa bo to naredil z barvo (–barva).
Zadnja stvar ... najpametnejši bodo spoznali, da ima ta logika (ob prevzemanju funkcije in konfiguriranju za izvajanje več dejanj) veliko, veliko potenciala, na primer ... če želim vnesti mapo in tudi izbriši drugo, torej želim vnesti / home / in tudi izbriši / opt / temp / funkcija za to bi bila:
function asdasd { cd "$1"; rm -Rv "$2"; }
In tipkanje v terminalu asdasd / domov / / opt / test / bi, ker bo vstopil v prvi parameter (/ home /) in izbrišite drugega (/ opt / temp /).
Kakorkoli že, to ima res VELIKO potenciala hehe, na tebi je, da to izkoristiš, kolikor lahko.
Če imate kakršne koli dvome ali vprašanja, pritožbe ali predloge, vam bom z veseljem pomagal, še zdaleč nisem strokovnjak, a vsaj rad bi pomagal 😀
pozdrav
In vse to zaradi neuporabe Zsh.
V resnici ga nisem poznal 😉
Hvala za namig, pazil bom nanj.
Vendar pa znanje ne poteka ... več ko nasvetov in znanja lahko človek pridobi, tem bolje, se vam ne zdi? 🙂
Zsh je za queers, moški uporabljajo sh !!! >: D
V resnici
HAHAHA ne ne ne ... Mislim, da ne, in tudi tega ne recite tako, ker bi bili nekateri lahko užaljeni.
Vsak uporabi tisto, kar mu najbolj ustreza, kar mu je najbolj všeč 😀
😉
Aplikacija, ki jo veliko uporabljam za krmarjenje po svojem sistemu, je Autojump:
https://github.com/joelthelion/autojump/blob/master/README.md
Moški so praktični, ženske in queers so tiste, ki si rade zapletajo življenje. Dodatna pojasnila niso potrebna.
Prosim, poskusite ne komentirati spolnih preferenc, da? ... Za take stvari so bile neprijetne situacije.
Upam, da je razumljivo.
To pojasnilo bi moralo biti za @msx. Ideje gradijo z resničnimi, objektivnimi in racionalnimi izjavami, ne z žaljivkami ali nesramnostjo.
V zgornjem komentarju sem mu rekel, naj teh reči ne govori (odpustite odpuščanje).
In zdaj še enkrat rečem da, vendar ne samo za vas, velja samo za vse.
Ne jemljite napačno, namen ni bil, da bi se kdo počutil neprijetno ali slabo, samo poskušam se izogniti nerazumevanju 🙂
Hahaha, pravkar sem videl ta komentar!
«To pojasnilo bi moralo biti za @msx. ideje so zgrajene z resničnimi, objektivnimi in racionalnimi izjavami, ne z žaljivkami ali nesramnostjo. "
Nehajte zajtrkovati z limonami, že ste videti tako kot Franklin na računu za 100 dolarjev: http://www.watchingamerica.com/frankfurterallgemeine000009.shtml
????
No, mislim, da mi je potem všeč biti queer, ker se, odkar sem se naučil uporabljati, nisem ustavil in tudi ne nameravam. o_____o
Ali moški uporabljajo sh?, Ta komentar je čuden od nekoga, ki ima bashrc poln stvari, zato predvidevam, da ste ženska. xP
Do tega nisem hotel priti. Prosim, pustimo boj tukaj, ja? 🙂
Vsak uporablja, kar hoče ... sh, zsh ali kar hoče, pa tudi ... vsakdo ima spolne želje, ki jih želi imeti, tukaj so se že borili za take stvari 🙁
hahaha xD
V zadnjem času se je zsh zelo razvil, takoj ko imam čas - ha, kako blodnjavo! - Prebral bom čim več njegove dokumentacije, da jo izkoristim in spremenim 🙂
Zdaj pa resno: pri zsh me moti le to, da ni 100% združljiv z Bashom, zato, če v svojih skriptah uporabljamo zsh, ki izkorišča ves njegov potencial, je zelo, zelo verjetno, da omenjeni skript ne uspe bash, na drugi strani, čeprav uporabljamo zsh, skripte lupine pišemo v bash, pa je uporaba zsh potratna ... o_O
Kljub temu se mi zdi zsh vredno. Ko smo že pri lupini, ali poznate Ribe? Projekt se je dvignil iz pepela, zdaj se imenuje fishfish in ga razvijajo zelo hitro.
Mislim, da je treba napisati zsh, ker je terminal zelo občutljiv na velike in male črke
Čeprav velja tudi cd && ls / route
Čeprav je daljše za pisanje
Lep pozdrav 😀
Motil sem se, prst mi je odšel
Sem rekel, da je s tem na seznamu in dostop do imenika
cd && ls / pot
ampak samo pripravi se
čeprav se uporablja le za seznam
ls / pot
ukaz, ki je enakovreden, je
cd / pot && ls
pozdrav
Dejansko se z && doseže enako 😀
Edina razlika je v tem, da ima "cd / opt / && ls" 6 znakov več kot samo "cd / opt /", to pomeni, da bi moral pritisniti še 6 tipk ^ - ^ U ... sem nekoliko len za take stvari hehe.
Zato sem se pridružil cd + ls ... LOL !!
Uporabljam tudi to, da rezultate filtriram po razširitvah.
primer
V ~ / Prenosih imam veliko datotek več kot 100, zato želim videti samo datoteko .png.
cd Prenosi && ls * png
Kaj bi moral dodati ali narediti za filtriranje rezultatov v enostavnejši kodi?
pozdrav
Preprosto 😉
Ustvarite funkcijo, ki je na primer cdlsf:
function cdlsf { cd "$1"; ls *.$2; }
Za uporabo bi to pomenilo:
cdlsf / opt / png
Na seznamu bodo le datoteke . PNG en / opt /
To je prvi parameter (v primeru / opt /) bi bil imenik, do katerega želite dostopati, in drugi parameter (v primeru png) bi bila razširitev, ki jo želite filtrirati, ko navedete imenik.
Drug primer, če želite odpreti / home / user / Pictures in si ogledati samo datoteke, ki so .JPG, bi bil:
cdlsf / home / user / Slike jpg
????
To si hotel, kajne?
PS: cdlsf sem dal s cd (enter) ls (list) f (filter) ... očitno pa lahko funkcijo pokličete, kar želite.
zsh ni POSIX in za začetek traja dlje, da se začne, zato sem raje peder, vendar bolj učinkovit
Najprej v zsh lahko omogočite podporo za POSIX. Drugič, čas traja, da se zažene glede na to, koliko funkcij naložite ob zagonu, zato je lahko tako lahka, kot želite. Tretjič, zsh je bolj praktičen in učinkovit kot pri kateri koli drugi lupini. Četrtič, uporabite ga pred kritiko.
5. Ko vklopite podporo za POSIX, ni več smiselno uporabljati ZSH.
Uporabljam ga že nekaj časa, ni vredno, sh je kratek in Bash popoln, v Bashu ne morete storiti ničesar z ustreznimi vzdevki in funkcijami.
Tema mi je zelo všeč. pravzaprav bi morali ustvariti obsežnejši članek o ukazih, ki jih je mogoče na splošno uporabljati v terminalu in v določenih distribucijah, kot je Čakra.
Poglejte to objavo 😉
https://blog.desdelinux.net/mas-de-400-comandos-para-gnulinux-que-deberias-conocer/
Zdelo se mi je zelo zanimivo, saj ste poleg poučevanja tega trika razložili, kako deluje vsak ukaz.
Spremljam vas že od začetka v svetu Linuxa (nedolgo nazaj ...) in spodbudil sem me, da komentirate samo, da vam čestitam za članek 😉
Hvala, ker ste se ustavili in nam pustili komentar 😀
Kadarkoli si upam nekaj razložiti, najraje čim bolj jasno ... no, zelo dobro vem, kaj je branje vadnic na internetu in sploh nič ne razumem hahaha.
Dobrodošli dvakrat ... dobrodošli v svet Tuxa haha, dobrodošli tudi na blogu 🙂
Če imate kakršna koli vprašanja, nas obvestite hehe.
Lep pozdrav in hvala za komentar ^ ⁻ ^
Pravkar sem prebral vašo objavo z drugega spletnega mesta in se nisem mogel upreti:
Ali ne bi bilo lažje, samo ustvarite vzdevek znotraj .bashrc?
vzdevek cd = 'ls'
Pravzaprav tisto, kar poskušam doseči, je vnesti imenik X (/ opt / ... / home / user / ... karkoli) in tudi, ko ga vnesem, samodejno navede vsebino tega imenika.
Vse skupaj naredite z enim samim korakom ali ukazom.
Če naredite vzdevek, kot ste navedli, potem bi seznam navedel, da, vendar ga ne bi vnašal.
Kolikor razumem, je cilj vsega tega narediti, da če želite na primer z ukazom "cd" vnesti "/ etc", vam bo ob vstopu samodejno prikazal vsebino tega imenika, kajne?
Če je tako, lahko funkcijo poenostavite na "vzdevek", kamor znotraj .bashrc vstavite:
vzdevek cd = »ls»
S tem, ko v terminalu uporabljate:
cd / itd
Vstopili boste v imenik «/ etc» in prav tako bo samodejno navedel vse datoteke in imenike, ki so tam.
Če sem narobe razumel cilj, opravičilo 😛
Pravzaprav želim vnesti imenik in enkrat v njem, da naštejem, kaj vsebuje.
Poskusil sem, kar pravite, in razglasil, da je cd = ls prek vzdevka, vendar zame ni uspelo.
Sam ga konfiguriram in nato:
cd / etc /
Navaja pa / etc /…, vendar ne gre v ta imenik.
Pustil sem posnetek zaslona, da boste lahko videli: http://img204.imageshack.us/img204/5272/cdlserror.png
Moja napaka 😀
Bilo je očitno, da tako ne bo šlo, in tudi ko sem poskusil:
vzdevek cdls = 'cd $ 1; ls'
Iz nekega čudnega razloga ne deluje, samo seznam imenika, vendar ne gre v D:
Bash napaka? xD
Opravičilo za nesmiselne komentarje! 😀 In vzamem funkcijo za svoj bashrc 😛
Vzdevek ni enak funkciji, vzdevek, če želite, da je enak več ukazom, morate uporabiti && ... ni tako kot v funkcijah, da uporaba; in pisanje dodatnih navodil vam bo uspelo.
HAHA ne za nič prijatelja, nič za opravičilo
pozdrav
PS: ... hudiča ... kako nostalgičen sem, ko vidim logotip Arch ... T_T ...
Vem, da ni enako, vendar sem mislil, da bo delovalo (Napaka: P)
Zame deluje le tisto z uporabo;; namesto "&&" znotraj vzdevka D: (imam dva taka vzdevka, česar ne razumem, zakaj ne deluje z vzdevkom, ki sem ga želel ustvariti za ta primer)
Hvala in mimogrede, mislim, da bom ostal na blogu pod naslovom "pogosti bralec" 😀 Vsebina bloga mi je bila zelo všeč 😛
oooh ja vem, včasih se ločim od mojega dragega Archa, ampak, ne vem zakaj, vedno je nemogoče, da se ne vrnem k njemu xD
Lep pozdrav!
No ... Tux je skrivnosten, počne stvari in velikokrat ga ne razumemo, ima pa načrt ali namen za vse ... HAHA 😀
Z veseljem preberem, kar rečeš, še en uporabnik Archa, ki se pridruži blogu hahahaha ... v veselje 😀
Moral sem ga nehati uporabljati zaradi nenavadnih težav, ki mi jih je povzročilo jedro ... vendar še vedno zaseda mesto v mojem srcu 🙁
LOL
Nisem srečal uporabnika Arch-a, ki ne bi bil zelo naklonjen distribuciji, ima "ne vem kaj, kaj vem": P, morda in če so bile težave, ki sem vam jih dal že zdavnaj, lahko pomislite, da bi se vrnili v Arch Arch
Mimogrede, vedel sem, da sem nekje drugje že prebral vaše ime (no, vzdevek, psevdonim, vzdevek, karkoli), ste del namiznih piscev, kajne? 🙂
Včasih sem jim brala 🙂
Pravzaprav za seznam vsebine imenika ni treba vnašati, zato mislim, da primer, ki ste ga izbrali, ni najbolj vesel, hehe. S tem lahko funkcije uporabimo za marsikaj koristnega.
Na primer, s to funkcijo ustvarim imenik in ga takoj vnesem (potrdi, da je uporabljen samo en parameter):
function mkcd () {
FNERR="Parametros incorrectos.\nUso: mkcd "
if [ $# -eq 1 ] ; then
mkdir -p "$1" && cd "$1"
else
echo -e $FNERR
fi
}
Hmmm ... blog je pojedel del ukaza, poskusil bom postaviti nepopolno vrstico z oznakami HTML:
FNERR="Parametros incorrectos.\nUso: mkcd <nombre del directorio a crear>"
Želel sem doseči le korak.
Z drugimi besedami, domnevam, da želim vstopiti v imenik (/ etc / squid /) in nato urediti datoteko v tem imeniku in se ne spomnim imena datoteke.
Koraki bi bili običajno:
cd / etc / squid /
ls
datoteka nano.conf
Toda s tem nasvetom, ki ga predlagam, prva dva koraka pretvorim samo v 2, tako da preprosto tako:
cd / etc / squid /
Vsebino imenika bo samodejno našel tudi zame.
Gre preprosto za shranjevanje koraka 😀
Ti me razumeš?
... težko mi je razložiti haha.
Ne, razlaga ni imela težav, mislil sem, da primer, ki ste ga izbrali za ponazoritev nasveta, ni bil idealen, saj lahko naredite preprost "ls imenik".
Pravzaprav sem takoj, ko sem videl funkcijo, razumel namen. V svojem programu uporabljam tudi različne funkcije .bash_aliasesNa primer, to veliko uporabljam za upravljanje zgodovine:
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
}
(S to funkcijo, če sem samo dal h Dobim zadnjih 25 ukazov, če pa na primer dam h nosilec Dobim zadnje ukaze, povezane s sklopi).
Prevzemam tvojo vlogo hehehe ... zasluži si jo preučiti 😀
super vaša funkcija! hvala
+1
KZKG ^ Gaara
Zelo dober odgovor, zelo dobro mi je služil, nanj nisem mogel odgovoriti že zgoraj
Zdaj bom za povečanje produktivnosti uporabil cdlsf, zelo dobro ime za ukaz 😀
pozdrav
Kot določite čas do terminala, sem to že storil prej, prenesel sem bashrc, vendar se ne spomnim, kako se je imenoval.
Dober vstop, trika nisem poznal, uporabil ga bom v praksi, da vidim, kako deluje. xP
Lep pozdrav.
Bilo bi lepo, če bi bil dodan moj brskalnik. xD
Lep pozdrav, še enkrat. xD
Kateri brskalnik uporabljate?
No, v drugem komentarju sem videl, da ste uporabljali Firefox 🙂
Ja, uporabljam Firefox, vendar je vedno manj in ni več moj glavni brskalnik, uporabljam dwb in bilo bi dobro, če bi ga lahko dodali. xP
Lep pozdrav.
In ali izdelava tega vzdevka ne bo povzročala težav s skripti, ko poskušate samo cd-jeti in tudi izpisovati ls? Posebej raje delam vzdevke z imeni, ki jih druge izvršljive datoteke ne uporabljajo, ker mi ni prvič, da mi dela težave ...
Kako dobite črtkane črte in čas po vsakem ukazu?
Poglej tukaj - " https://blog.desdelinux.net/con-el-terminal-mejorando-la-apariencia-de-la-consola-actualizado/
Moj prispevek:
vzdevek ldir = 'ls | grep -v \\. ' ## navedite samo imenike (pazite, ne preimenujte ga v ld, ker obstaja ukaz GNU / Linux s tem imenom)
-
vzdevek ll = 'ls -lah –barva | awk '\ »{k = 0; for (i = 0; i <= 8; i ++) k + = ((substr ($ 1, i + 2,1) ~ / [rwx] /) * 2 ^ (8-i)); if (k) printf ("% 0o", k); print} '\' ''
Zanimivost tega vzdevka je awk, ki razčleni rezultat ls, rezultat? Prikaže dovoljenja za datoteke v osmiški obliki poleg rwx, zame neskončno bolj praktično in hitreje kot črke.
-
vzdevek lg = 'ls -lah –barva | awk '\' '{k = 0; for (i = 0; i <= 8; i ++) k + = ((substr ($ 1, i + 2,1) ~ / [rwx] /) * 2 ^ (8- i)); if (k) printf ("% 0o", k); print} '\' '| grep -i'
Različica vzdevka zgoraj. Na koncu sem dodal grep, tako da na primer na ta način, ko na primer:
$ lg zadrga
Pokažite mi samo datoteke, ki vsebujejo zip v kateri koli obliki (poleg oktalnih dovoljenj itd. Opazite -i).
-
vzdevek grep = 'grep –color = auto' ## obarva ujemanje grep
-
Imam še veliko za deliti, toda to malo mesto je tesno xD
@KZKG, osebje: Ali menite, da odprete objavo v blogu ali na forumu (na katero povežemo vsakič, ko je objavljen namig, povezan s konzolo), da zberete vse te male bisere?
Lep pozdrav!
S povezavo misliš to? - » https://blog.desdelinux.net/tag/bash
Nisem rekel ničesar, nič drugega ni potrebno, vse je odlično označeno!
Kakšen čilenec, to je zelo dobra funkcija!