Kai kurie pagrindiniai naudingi komandos
Mes jau pateikėme pagrindinį shell scenarijų ir pavyzdžių pagrindą, skirtą kilpoms, tačiau įsitikinkite, kad patikrinote šiuos straipsnius, jei iki šiol nepatekoite mūsų skilčių vadovavimo vadovo.
Komandų eilutė yra nuostabi dėl daugelio priežasčių, o nukreipimas yra vienas iš labiausiai žinomų. Jei jums reikėjo atkreipti dėmesį ir atkurti kiekvienos komandos išvestį, kad galėtumėte imtis tolesnių veiksmų arba naudoti tai ko nors kitam, mes visi jau seniai nusivylėme. Persiuntimas leidžia mums naudoti tą išvestį ir išsaugoti jį arba iš karto jį naudoti kaip kitos komandos komandą. Mes taip pat galime naudoti failus kaip įvestis kitoms komandoms.
Prieš pradėdami einame, apžvelkime keletą pagrindinių komandų, kurios gali būti naudingos daugelyje skirtingų vietų.
echo - Ši komanda tiesiog atspausdina (parodo) visą jo argumentą komandinėje eilutėje kaip išvestį
echo argument with spaces
katė - Ši komanda parodo tekstinių failų turinį kaip išvestį.
cat file_to_be_read
Tarkime, kad mes sukuriame šį tekstinį failą nano:
grep pattern file
Peradresuoti išvestis
Norėdami peradresuoti komandų išvestį į failą, mes naudojame specialųjį simbolį, didesnis už simbolį (>).
Pakeiskime savo sąrašą, ar mes? Įveskite šią komandą:
echo pepperoni > list
Taip pat atkreipkite dėmesį, kad ankstesnis "sąrašo" turinys buvo pašalintas. Bandykite vėl:
echo yellow peppers >> list
Paimkime komandinės išvesties ir įtraukiame ją į failą:
ls –al / > ~/rootlist
Vamzdynas, arba grandininis
Vamzdynas yra taip pavadintas, nes jis naudoja vamzdį (|; dalijamasi su "" raktą daugumoje klaviatūrų). Iš esmės, ji užima vieną komandą ir iš karto perduoda ją kitai. Galite sukurti ilgas komandų grandines, kad gautumėte labai konkrečią norimą produkciją tokiu būdu, ir tai labai patogu tokiems komandams kaip grep.
Kaip matote, grep yra didžiosios ir mažosios raidės. Galite naudoti žymą "-i", kad ignoruotumėte bylą.
Peradresuoti įvestis
Be to, galite įvesti įvestis iš failų komandoms naudodami simbolį mažiau (<).
cat < list
Tarkime, kad mes norime filtruoti bet kokį žodį, kurio "pep" jame iš mūsų dabartinio "sąrašo" failo į naują failą, vadinamą "pakeitimais".
grep pep < list > revisions
grep pep < list | sort > revisions
Norėdami parodyti rūšiavimo komandą, pažvelkime į šį pavyzdį:
Paprastas scenarijus
Sukursime scenarijų, kurio forma yra tokia:
script searchterm listfile
Tai paims terminą ir naudos grep, kad galėtumėte ieškoti sąrašo byloje, rūšiuoti rezultatus ir išvesti juos į kitą failą.
Kalbant apie rūšiavimą, galite padaryti daugiau nei rūšiuoti pagal abėcėlę. Pažiūrėkite į meniu puslapį kai kurioms iš šių komandų:
- tsort - labiau pažengusi topologinio rūšiavimo funkcija
- tr - leidžia nurodyti konkrečius simbolius kitiems simboliams ir perrašyti tarp jų.
- uniq - pašalina bet kokį ne unikalų (skaityti: dublikatą)
- awk - tikrai išplėstinė teksto apdorojimo kalba / funkcija, kuri gali būti naudojama atskiriant laukus failų pavadinimuose
- supjaustyti, įklijuoti / prisijungti - komandos, naudingos laukų išskyrimui iš tekstinių failų ir naujų įrašų į stulpelius
- atrodo - atlieka paiešką kaip grep, bet naudoja paieškos žodyną (kurį galima nurodyti vartotojo vardu)
- WC - leidžia gauti žodžių skaičių, eilučių skaičių, simbolių skaičių ir dar daugiau
Mes apžvelgėme dar keletą pagrindų, kurie gali būti naudingi komandinėje eilutėje, kaip ir scenarijose. Tekstiniai duomenys dažnai yra dalykų, kuriuos mes naudojame kasdien, esmę, todėl galime dirbti su ja, ieškoti ir manipuliuoti, yra raktas.
Kokie yra jūsų mėgstamiausių scenarijų? Turite kokius nors specialius teksto failų scenarijus? Pasidalykite tuo, ko žinote, į komentarus!