Pirmiausia norėčiau atsiprašyti, nes praėjusį penktadienį negalėjau parašyti įrašo, todėl šiandien pridėsiu papildomą, kad kompensuočiau prarastą dieną. 🙂
Petnešų išplėtimas
Ispanų kalba manau, kad plėtra yra įkvėpta funkcija C kriauklė, tai sukuria rašmenų, įvestų į petnešų vidų, derinius. Naudojama tvarka yra iš kairės į dešinę. Tai visai nesudėtinga, tačiau tai yra galimybė, kuri bus labai naudinga mūsų kelionėse po GNU / Linux.
pavyzdys:
$ aidas a {1,2,3} a1 a2 a3
Kai naudojamas su kableliais (,) generuoja vertės a ir petnešose esančių reikšmių derinius. Jei už raktų nebūtų jokios vertės, ji būtų rodoma tik po vieną reikšmę, kurią yra raktas.
$ echo {a, b, c} abc
Jo naudojimas visiškai nesudėtingas, yra ir kitų labiau paplitusių pavyzdžių, pavyzdžiui, daug katalogų sukūrimas aplanke
$ mkdir ~ / Darbas / {vienas, du, trys, keturi, penki}
Tai sukuria penkis aplankus užduočių aplanke, tai tarsi įveskite vieną komandą vienu metu. 5 katalogų kūrimas.
Yra plėtra dviem taškais .. taip sukuriama skaičių arba simbolių serija, kuri eina nuo pradinės vertės iki galutinės vertės, nenaudokite raidžių skaičių.
$ echo {1..5} #Correct 1 2 3 4 5 $ echo {a..f} #Correct abcdf $ echo {a..5} #Neteisingas {a..5} # Manau, kad niekada negausiu įpratęs prie šios mėlynos spalvos raidėje
Sukurdami ciklą galime sutaupyti laiko forumas
# Užuot parašę $ už ((i = 1; i <= 5; i ++)); daryti atgarsį „Mano numeris $ i“; padarytas Mano numeris 1 Mano numeris 2 Mano numeris 3 Mano numeris 4 Mano numeris 5 # Išsaugokite kodą naudodami skliaustų išplėtimą. $ už i {1..5}; do echo "Mano numeris $ i; padaryta Mano numeris 1 Mano numeris 2 Mano numeris 3 Mano numeris 4 Mano numeris 5 # Žinoma, tai teisinga naudoti, nors išvestis skiriasi. $ echo" Mano numeris "{1..5} Mano numeris 1 Mano numeris 2 Mano numeris 3 Mano numeris 4 Mano numeris 5
Na, aš manau, kad koncepcija yra aiški, haha, dabar aš tik pakomentuosiu, kad ji yra derinama ir įdėta į vidų.
Sujungiamu būdu galime prisijungti prie vieno ar daugiau raktų
$ echo {a..c} {1..3} a1 a2 a3 b1 b2 b3 c1 c2 c3
Sujungdami lizdą, kaip daugelis įsivaizduoja, galite naudoti išplėtimo raktus išplėtimo raktuose
$ echo {a, c {1..3}, d} a c1 c2 c3 d
Ir pagaliau iš Bash nieko galima padidinti vertes.
$ echo {0..20..2} 0 2 4 6 8 10 12 14 16 18 20
Visa tai skirta šiandienai, todėl ačiū, kad skaitėte man žmones 🙂
papildomai
Kaip sukurti vietinę šiukšliadėžę
Kai sakau a jusu siuksliu vietinis, turiu omenyje katalogą, kuriame turime savo scenarijus ir juos galima įvykdyti kaip paprastą komandą ...
Tai pasiekti yra gana lengva, pirmiausia turite sukurti katalogą, kuriame išsaugosime scenarijus.
mkdir ~ / .bin # Šiame pavyzdyje jis bus paslėptas
Dabar mes turime savo aplanką, norėdami išsaugoti scenarijus, tačiau jis neveiks, kol nepridėsime naujo .bin kelio į $ PATH
Tam failas yra redaguojamas bash_profilis, ir eilutė pridedama.
eksportuoti PATH = $ PATH: ~ / .bin
O voila pakanka sukurti vietinę šiukšliadėžę, žinoma, ji paprašys root teisių, jei reikia pavyzdžiui, kurį mes parašome greitą scenarijų.
#! / bin / bash aidas „Sveiki, $ 1, kaip tu?“
Išsaugokite jį naudodami Sveiki
Scenarijui suteikiamas vykdymo leidimas ir jo pakaks tik iškviesti iš terminalo
$ labas wada # Tai parodys pranešimą Sveiki wada, kaip tu?
Taigi naudodami šį greitą triuką galite greičiau paleisti scenarijus
Tai viskas šiandien žmonėms, kuriems viskas gerai 🙂
PS Atsiprašau už klaidas, jei jų yra, mano akys jau užsimerkia hahaha 😀
Aš buvau „bash“ numeryje ilgą laiką ir nesu supratęs šių įtvarų išplėtimų, ačiū.
Kelio gudrybėje Fedora pagal numatytuosius nustatymus daro kažką panašaus, bet aplanke „~ / .local / bin“ pažiūrėkite į fragmentą iš bash_profile, kurį atnešiau Jessie.
PATH = $ PATH: $ HOME / .local / bin: $ HOME / bin
eksporto kelias
Turiu tam tikrų rūpesčių:
1. Kaip priversti jį duoti du intervalus su plėtimu taškais; amžiaus {1..24,55..90} ir kad aš prailginu amžių nuo 1 iki 24 ir tęsiu nuo 55 iki devyniasdešimt. kaip aš tai padariau, neveikė. Kodėl?
2. Jei noriu, kad pirmoji reikšmė būtų nulinė, ir tęskite numeraciją:
wget: http://manga.favorito / vaizdas http://manga.favorito/imagen1
Išbandžiau tokiu būdu, bet „wget“ negavau: http://manga.favorito/imagen{, 1..42} Pasak manęs, turėčiau palikti vardą be numerio ir tęsti numeraciją nuo 1 iki 42, bet tai nebuvo taip. Kodėl?
Jūs esate teisus, kai kurie distrai turi arba turėjo .bin, bet taip yra, kad visi suprastų ir pamatytų, jog tai galima padaryti bet kokiu distro: D, ačiū, kad užsukote.
Labai gerai, labai naudinga šiems žinių įnašams į „Linux“ pasaulį ir jo saugumą, tikiuosi, kad penktadienį galėsiu perskaityti, kaip formatuoti „pendrive“ terminale ir įrašyti bet kurios nemokamos sistemos „iso DVD / CD“ vaizdą terminale.
Ačiū už tavo žodžius brolis 😀 Pažadu, kad kitą penktadienį padarysiu tą įrašą. Aš turiu kalbėti apie „Vim“ pritaikymą hahaha, bet nenorėjau, kad jie manytų, kad tai apims tik „Vim“.
Puikus terminalo straipsnis, geriausias, kurį skaičiau per ilgą laiką, suskaičiavus kelis tinklaraščius, kuriuose skelbiamos šio stiliaus pamokos. Labai ačiū!!
Labai ačiū 😀 bandysiu neatsilikti.
Puikus vietos šiukšliadėžės patarimas!
Sveiki atvykę!
Puiku, puiku, kad tai jums naudinga, labai ačiū už praeinantį brolį 😀
Labai gerai! Apie tai neįsivaizduojama. Ačiū 🙂
Sveiki, brolis, ačiū, kad skyrėte laiko jį perskaityti 😀
Turiu tam tikrų rūpesčių:
1. Kaip priversti jį duoti du intervalus su plėtimu taškais; amžiaus {1..24,55..90} ir kad aš prailginu amžių nuo 1 iki 24 ir tęsiu nuo 55 iki devyniasdešimt. kaip aš tai padariau, neveikė. Kodėl?
2. Jei noriu, kad pirmoji reikšmė būtų nulinė, ir tęskite numeraciją:
wget: http://manga.favorito/imagen http://manga.favorito/imagen1
Išbandžiau tokiu būdu, bet „wget“ negavau: http://manga.favorito/imagen{, 1..42} Pasak manęs, turėčiau palikti vardą be numerio ir tęsti numeraciją nuo 1 iki 42, bet tai nebuvo taip. Kodėl?
* Atsiprašau, bet aš įdėjau pirmąjį įrašą kaip atsakymą ir kai kuriose dalyse jis buvo neteisingas
1.- Jūsų logika neteisinga, jūs turite ją įdėti, hahaha pabandyti
$ echo {{1..24},{55..90}}
2. - Tas pats kaip ankstesnis ...
$ echo "URL"{,{1..42}}
Nesijaudink broli, mes esame čia, kad mums padėtų 🙂
Tai pakeis „echo“, atrodys taip
aidas „Mano numeris“ {1..5} $ '\ n' | sed -e: a -e '$! N; s / \ n / \ n /; ta' | sed -e: a -e '$! N; s / 5 \ n / 5 /; ta'
bet man labiau patinka printf
printf "Aš, aš% d \ n" {1..5}
ir naudoti tą pačią rakto išplėtimo koncepciją
Atte
jvk85321
Kaip įdėti gnybtų dėžutes ????
Atte
jvk85321
Tikrinama, ar kodo žyma veikia
jeje
Tai pakeis „echo“, atrodys taip
echo “Mi numero “{1..5}$’\n’ | sed -e :a -e ‘$!N;s/\n /\n/;ta’ | sed -e :a -e ‘$!N;s/5\n/5/;ta’
pero prefiero printf
printf “Mi numero %d\n” {1..5}
ir naudoti tą pačią rakto išplėtimo koncepciją
Atte
jvk85321
Man liko keletas klaidų, bet tai pavyko
Aš gyvas maluco
Atsiprašau, kad vargau
Atte
jvk85321
Hahaha, jūs atsakėte patys, bet jei tai yra tarp etikečių
nėra tarpų ...
Jei pakeisite, nereikia atlikti tiek daug vamzdžių, kad:
echo -e "Mi numero "{1..5}"\n\b"
Jei atvirai, „printf“ yra geriausias būdas spausdinti tekstą scenarijuose, jis yra labiau nešiojamas, tačiau tradiciškai naudojamas aidas.
Aš užimu erdves! chahahahaha
pažiūrėkime dabar 😀
Fuck jis yra "mažiau nei" kodas "didesnis nei" "mažiau nei" / kodas "didesnis nei" hahahaha
Problema, kad echo -e nėra standartinė, todėl ji neveikia visose sistemose.
Taip pat išeina netvarkingas
jvk@jvktos:~$ echo -e "Mi numero "{1..5}"\n\b"
Mi numero 1
Mi numero 2
Mi numero 3
Mi numero 4
Mi numero 5
jvk@jvktos:~$
Ir su tuo
jvk@jvktos:~$ echo "Mi numero "{1..5}$'\n' | sed -e :a -e '$!N;s/\n /\n/;ta' | sed -e :a -e '$!N;s/5\n/5/;ta'
Mi numero 1
Mi numero 2
Mi numero 3
Mi numero 4
Mi numero 5
jvk@jvktos:~$
Manau, kad antrasis geriau pateikia rezultatą, hahaha
Atte
jvk85321
Šios etiketės yra bummeris, hehehe, pažiūrėkime, ar jos dabar pasiteisins
jvk@jvktos:~$ echo -e "Mi numero "{1..5}"\n\b"
Mi numero 1
Mi numero 2
Mi numero 3
Mi numero 4
Mi numero 5
jvk@jvktos:~$
Ir su tuo
jvk@jvktos:~$ echo "Mi numero "{1..5}$'\n' | sed -e :a -e '$!N;s/\n /\n/;ta' | sed -e :a -e '$!N;s/5\n/5/;ta'
Mi numero 1
Mi numero 2
Mi numero 3
Mi numero 4
Mi numero 5
jvk@jvktos:~$
Manau, kad antrasis geriau pateikia rezultatą, hahaha
Atte
jvk85321
Bet kokiu atveju palikite tarpus tarp eilučių, todėl aš nekenčiu html, hahahaha
Puiku! Ploju tau kojas haha
Aš nežinojau, kad raktus galima įdėti į lizdą, nes taip pat niekada nebandžiau jais naudotis, tai tikrai sutaupo daug kodo ir taip yra lengviau įskaitomas tokiu būdu. Ačiū!
Ačiū jums už praeinantį brolį, džiaugiuosi, kad tai buvo naudinga utilidad
Kviečiame, tam mes čia ir norime pasidalinti idėjomis ir prisidėti. Aš nežinau, kaip programuoti, aš tiesiog padariau keletą dalykų „Bash“ ir dviejuose įrašuose paskelbiau keletą scenarijų, kuriuos aš padariau. Manau, kad tai žinant, kodą bus lengviau suprasti.