Naon Dupi Linux Ubuntu Metacharacters Jeung Kumaha Ulah Anjeun Paké eta

Numutkeun Wikipédia, metacharacter hiji wae karakter nu mibanda harti husus, saperti karat (^), tanda dollar ($) atawa tanda asterisk (*).

Dina watesan Linux Ubuntu, aya sababaraha adil tina metacharacters ieu jeung harti maranéhna bénten gumantung ka anu sorana atawa program anjeun ngajalankeun.

The Full gaul Salaku A Metacharacter (.)

The hina pinuh eureun ieu dipaké pikeun nyumbang ka posisi ayeuna lamun ngajalankeun Paréntah kayaning cd , manggihan atawa sh tapi dina aplikasi kayaning awk , grep na séd eta dipake keur denote karakter nanaon.

Salaku conto, paréntah di handap bakal manggihan sakabeh mp3 file di folder arus jeung handap.

manggih . -name * .mp3

Lamun ngajalankeun paréntah anu di maneh hadir diréktori (pwd) gawé lajeng Anjeun meureun bakal meunang hasil dibalikeun, asumsina anjeun tetep mp3 payil Anjeun dina folder musik dina folder imah anjeun.

Ayeuna kasampak di paréntah ieu:

ps -ef | grep f..efox

The béréndélan paréntah ps sakabéh prosés ngajalankeun dina komputer Anjeun. Paréntah grep nyokot garis tina input tur neangan pola hiji.

Kituna ps teh -ef paréntah meunang daptar prosés ngajalankeun jeung mere ka grep nu maluruh mana wae garis dina daptar anu boga f..efox mana. tiasa hartosna karakter nanaon.

Upami Anjeun gaduh Firefox ngajalankeun anjeun bakal meunang cocok. Nya kitu, lamun boga program nu disebut fonefox atanapi freefox ngajalankeun maranéhna ogé bakal balik.

The bintang sakumaha metacharacter a (*)

bintang mangrupa metacharacter leuwih universal well-dipikawanoh sarta dipaké pikeun hartosna 0 atawa leuwih mun neangan pola hiji.

Salaku conto:

manggih . -name * .mp3

The * .mp3 mulih cocok pikeun sagala Ngaran koropak nu ends di .mp3. Nya kitu, abdi bisa geus dipaké dina bintang jeung paréntah grep salaku nempokeun handap:

ps -ef | grep F * efox

Eta sia noting yén ieu béda rada sabab bintang hartina enol atawa leuwih kituna ogé manggihan Firefox, facefox na fonefox dinya ogé bisa manggihan flutefox, ferretfox komo ngan fefox.

The karat Salaku A Metacharacter (^)

The karat (^) anu dipaké pikeun denote mimiti garis atanapi string a. Jadi kumaha ieu dinya dipaké?

The LS paréntah anu dipaké pikeun daptar sadaya file di folder nu saperti kieu:

LS

Lamun hayang nyaho sakabéh file dina folder nu dimimitian ku string tangtu kayaning "GNOME" lajeng karat anu bisa dipaké pikeun nangtukeun string éta.

Salaku conto:

LS | grep ^ GNOME

Catetan yen ieu ngan mangrupa daptar payil nu mimitian ku GNOME. Upami anjeun hoyong file nu gaduh GNOME di Ngaran koropak nu mana mangka anjeun bakal deui dibalikkeun deui ka bintang teh.

Dina conto di luhur, anu LS mulih daptar filenames na pas daftar eta mun grep nu dipaké pikeun cocog pola. grep weruh yén simbol karat hartina neangan naon bae anu dimimitian ku aksara anu datangna saatos eta sarta dina hal ieu, geus GNOME a.

The Dollar Lambang Salaku A Metacharacter ($)

Lambang dollar tiasa gaduh sababaraha hartos salaku metacharacter dina Linux.

Lamun dipaké pikeun cocog pola hartina sabalikna mun karat sarta ngalambangkeun sagala pola nu ditungtungan make senar nu tangtu.

Salaku conto:

LS | grep PNG $

Ieu mangrupa daptar sadaya file anu ditungtungan ku PNG.

Lambang dollar ogé dipaké pikeun ngaksés variabel lingkunganana dina cangkang bash.

Salaku conto:

ékspor anjing = Molly
$ Anjing bahana

Anjing ékspor garis = Molly nyiptakeun hiji variabel lingkungan disebut anjing sarta susunan nilai -na pikeun Molly. Pikeun ngakses variabel lingkungan $ simbol ieu dipaké. Jeung $ simbol pernyataan $ anjing bahana mintonkeun Molly tapi tanpa éta, pernyataan anjing bahana ngan mintonkeun anjing Kecap.

Escaping Metacharacters

Kadang-kadang anjeun teu hayang metacharacter ka boga harti husus. Naon lamun boga file disebut f.refox sarta berkas disebut Firefox.

Ayeuna kasampak di paréntah di handap:

LS | grep f.refox

Kumaha saur anjeun geus balik? Duanana f.refox jeung Firefox anu balik lantaran duanana cocog pola.

Ka hijina balik f.refox Anjeun bakal kedah kabur sakabehna eureun mun sabenerna hartosna meungpeuk pinuh kieu:

LS | grep f \\. refox

Umum Metacharacters jeung harti Maranéhna

Daptar Linux Ubuntu Metacharacters
perbawa harti
. sagala karakter
* Enol atawa leuwih karakter
^ Cocog sagala garis atanapi string anu mimitian ku pola hiji (ie ^ GNOME)
$ Cocog sagala garis atanapi string tungtung ku pola (ie GNOME $)
\ Escapes karakter saterusna ngaleupaskeun harti husus na
[] Cocok salah sahiji daptar atawa rentang (ie [ "ABC", "TKR"] atanapi [1..9]
+ Cocok salah sahiji atawa leuwih harita (ie grep a +)
? Cocok enol atawa salah harita