Linux exec Command Demonstration
Sisällysluettelo:
- Kuinka käyttää Linux
xargskomentoa - Kuinka tarkastella komentoa ja kehottaa käyttäjää
- Kuinka rajoittaa argumenttien määrää
- Kuinka suorittaa useita komentoja
- Erottajan määrittäminen
- Kuinka lukea kohteita tiedostosta
- Käytä
xargskanssa - Xarg-merkkien käyttäminen välilyöntimerkkien leikkaamiseksi
- johtopäätös
xargs
apuohjelma antaa sinun luoda ja suorittaa komentoja tavanomaisesta syötöstä. Sitä käytetään yleensä yhdessä muiden komentojen kanssa putkiston kautta.
xargs
voit tarjota normaalitulon argumenttina komentorivin apuohjelmille, kuten
mkdir
ja
rm
.
Tässä opetusohjelmassa
xargs
komennon käytön perusteista.
Kuinka käyttää Linux
xargs
komentoa
xargs
lukee argumentit tavanomaisesta syötöstä, erotettuna tyhjillä välilyönteillä tai uusilla riveillä, ja suorittaa määritetyn komennon käyttämällä syötettä komennon argumentteina. Jos komentoa ei anneta, oletusarvo on
/bin/echo
.
xargs
komennon syntaksi on seuraava:
xargs]
Tyypillisin esimerkki
xargs
olisi siirtää useita välilyönnillä erotettuja merkkijonoja putken avulla
xargs
ja suorittaa komento, joka käyttää näitä merkkijonoja argumentteina.
echo "file1 file2 file3" | xargs touch
Yllä olevassa esimerkissä putkistamme vakiotulon
xargs
, ja
touch
suoritetaan jokaiselle argumentille, jolloin luodaan kolme tiedostoa. Tämä on sama kuin jos ajaisit:
Kuinka tarkastella komentoa ja kehottaa käyttäjää
Tulosta komento terminaaliin ennen sen suorittamista käyttämällä
-t
(
--verbose
) -vaihtoehtoa:
echo "file1 file2 file3" | xargs -t touch
touch file1 file2 file3
echo "file1 file2 file3" | xargs -p touch
Kirjoita
y
tai
Y
vahvistaaksesi ja suorittaaksesi komennon:
touch file1 file2 file3 ?…y
Tämä vaihtoehto on hyödyllinen suoritettaessa tuhoisia komentoja.
Kuinka rajoittaa argumenttien määrää
Oletuksena komentoon siirrettyjen argumenttien määrä määräytyy järjestelmän rajan perusteella.
-n
(
--max-args
) -asetus määrittelee annettuun komentoon lähetettävien argumenttien määrän.
xargs
ajaa määritettyä komentoa niin monta kertaa kuin tarvitaan, kunnes kaikki argumentit ovat loppuneet.
Seuraavassa esimerkissä standarditulosta luettavien argumenttien lukumäärä on rajoitettu yhteen.
echo "file1 file2 file3" | xargs -n 1 -t touch
Kuten alla olevasta moniosaisesta tuotosta voidaan nähdä, kosketuskomento suoritetaan erikseen jokaiselle argumentille:
touch file1 touch file2 touch file3
Kuinka suorittaa useita komentoja
Voit suorittaa useita komentoja
xargs
sovelluksella käyttämällä
-I
vaihtoehtoa. Se toimii määrittelemällä
replace-str
vaihtoehdon
-I
jälkeen ja kaikki
replace-str
esiintymät korvataan xargsille siirretyllä argumentilla.
Seuraava
xargs
esimerkki suorittaa kaksi komentoa, ensin se luo tiedostoja
touch
, ja sitten se luettelee tiedostot
ls
komennolla:
echo "file1 file2 file3" | xargs -t -I % sh -c '{ touch %; ls -l %; }'
-rw-r--r-- 1 linuxize users 0 May 6 11:54 file1 -rw-r--r-- 1 linuxize users 0 May 6 11:54 file2 -rw-r--r-- 1 linuxize users 0 May 6 11:54 file3
Tavallinen valinta
replace-str
on
%
. Voit kuitenkin käyttää toista paikkamerkkiä, esimerkiksi
ARGS
:
echo "file1 file2 file3" | xargs -t -I ARGS sh -c '{ touch ARGS; ls -l ARGS; }'
Erottajan määrittäminen
Käytä
-d
(
--delimiter
) -vaihtoehtoa asettaaksesi mukautetun
--delimiter
, joka voi olla joko yksi merkki tai
--delimiter
, joka alkaa
\
.
Seuraava esimerkki, jota käytämme
;
erottimena:
echo "file1;file2;file3" | xargs -d ; -t touch
Kuinka lukea kohteita tiedostosta
Xargs-komento voi myös lukea kohteita tiedostosta vakiosyötteen sijasta. Käytä
-a
(
--arg-file
) -vaihtoehtoa, jota seuraa tiedostonimi.
Seuraavassa esimerkissä
ips.txt
komento lukee
ips.txt
tiedoston ja ping jokaisen IP-osoitteen.
8.8.8.8 1.1.1.1
Käytämme myös vaihtoehtoa
-L 1
, joka ohjeistaa
xargs
lukemaan yhden rivin kerrallaan. Jos tämä vaihtoehto jätetään pois,
xargs
siirtää kaikki IP: t yhdelle
ping
komennolle.
xargs -t -L 1 -a ips.txt ping -c 1
ping -c 1 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=50 time=68.1 ms… ping -c 1 1.1.1.1 PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data. 64 bytes from 1.1.1.1: icmp_seq=1 ttl=59 time=21.4 ms
Käytä
xargs
kanssa
xargs
käytetään useimmiten yhdessä
xargs
kanssa. Voit etsiä tiettyjä tiedostoja etsimällä ja käyttää sitten
xargs
tiedostoja suorittaakseen toimintoja näillä tiedostoilla.
Välttääksesi rivejä tai muita erikoismerkkejä sisältävien tiedostojen nimissä esiintyviä ongelmia, käytä aina löytää
-print0
asetusta, joka aiheuttaa sen, että
find
tulostaa koko tiedostonimen ja sen jälkeen
-print0
merkin. Tätä tulosta voidaan tulkita oikein
--null
käyttämällä
-0
, (
--null
) -vaihtoehtoa.
Seuraavassa esimerkissä
find
tulostaa kaikkien
/var/www/.cache
olevien tiedostojen täydelliset nimet ja
xargs
siirtää tiedostopolut
rm
komentoon:
find /var/www/.cache -type f -print0 | xargs -0 rm -f
Xarg-merkkien käyttäminen välilyöntimerkkien leikkaamiseksi
xargs
voidaan käyttää myös työkaluna
xargs
poistamiseksi tietyn merkkijonon molemmilta puolilta. Putki merkkijono vain
xargs
komentoon, ja se tekee trimmauksen:
echo " Long line " | xargs
Long line
Tästä voi olla hyötyä vertaamalla merkkijonoja komentosarjoissa.
#!/bin/bash VAR1=" Linuxize " VAR2="Linuxize" if]; then echo "Strings are equal." else echo "Strings are not equal." fi ## Using xargs to trim VAR1 if]; then echo "Strings are equal." else echo "Strings are not equal." fi
Strings are not equal. Strings are equal.
johtopäätös
xargs
on Linuxissa komentorivi-apuohjelma, jonka avulla voit rakentaa ja suorittaa komentoja.
Lisätietoja
xargs
vaihtoehdosta on xargs-man-sivulla.
Windows-sovellusten käyttö Linuxissa
Viini on ilmainen, avoimen lähdekoodin tapa käyttää Windows-sovelluksia Linuxissa
Microsoft ja Best Buy Gang Up Linuxissa
Sanot "anti-Linux", sanon "Pro-Windows". Te sanotte Linux-hajautus, sanon "markkinointi".
Hyviä uutisia pelaajien metsästäjille Androidissa, Linuxissa ja avoimessa lähteessä
Vastaavia taitoja ja asiantuntemusta etsitään " , "Dice reports.







