Domača » kako » Kaj pomeni odstotek prijave v Linux Shell Strings?

    Kaj pomeni odstotek prijave v Linux Shell Strings?

    Ko ste v procesu učenja, kako v celoti uporabiti lupino Linuxa, boste morda začudeni glede tega, koliko lahko upravljate z nizi, da bi dobili najboljše rezultate. S tem v mislih ima današnji SuperUser Q & A odgovor na vprašanje radovednega bralca.

    Današnja seja vprašanj in odgovorov prihaja z namenom SuperUser-a, ki je del skupine Stack Exchange, ki temelji na skupnostih spletnih mest za vprašanja in odgovore.

    Vprašanje

    Bralnik super uporabnika Nissim Kaufmann želi vedeti, kaj znaša znak za odstotek v nizih lupine Linux:

    Če uporabljate ukazno lupino Linux, kaj naredi znak za odstotek (%)? Na primer:

    Kaj pomeni znak za odstotek v nizih lupine Linuxa?

    Odgovor

    Sodelavec SuperUser Marek Rost ima odgovor za nas:

    Ko se v vzorcu uporabi znak za odstotek (%) $ variable% substring, vrne vsebino spremenljivke z najkrajšim črtanjem podnizov z zadnje strani spremenljivke.

    Ta funkcija podpira vzorce nadomestnih znakov, zato sprejema zvezdico (zvezdico) kot nadomestek za nič ali več znakov. Omeniti je treba, da je to specifična za Bash. Druge lupine Linuxa ne vsebujejo nujno te funkcije.

    Če želite izvedeti več o manipulaciji z nizi v Bashu, vam priporočam, da si preberete naslednjo stran: Advanced Bash-Scripting Guide: Poglavje 10. Manipuliranje spremenljivk. Med mnogimi drugimi priročnimi funkcijami pojasnjuje, na primer, kaj pomeni dvojni znak za odstotek (%%).

    To sem pozabila omeniti, ko se uporablja v vzorcu $ ((številka spremenljivke%)) ali $ ((spremenljivka1% $ variable2)), znak% (%) bo deloval kot operater modulo.

    Kadar se odstotek znaka (%) uporablja v različnih kontekstih, ga je treba priznati le kot običajen znak.


    Imate kaj dodati pojasnilu? Zvok v komentarjih. Želite prebrati več odgovorov drugih uporabnikov tehnologije Stack Exchange? Oglejte si celotno nit razprave tukaj.

    Kredit za slike: Posnetki zaslona Linuxa (Flickr)