Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen xargs komutudur.
Program:
ADI
xargs - standart girdiden komut satırları oluşturun ve yürütün
SİNOPSİS
xargs [-0prtx] [-E eof-str] [-e[eof-str]] [--eof[=eof-str]] [--boş] [-d sınırlayıcı]
[--sınırlayıcı sınırlayıcı] [-I değiştir-str] [-i[değiştir-str]] [--yer değiştirmek[=değiştir-str]]
[-l[maksimum çizgiler]] [-L maksimum çizgiler] [--max-satırları[=maksimum çizgiler]] [-n maksimum argümanlar] [--max-arg'lar=maksimum
args] [-s maksimum karakter] [--max-karakterler=maksimum karakter] [-P maksimum işlemler] [--max-proc'lar=maksimum işlemler]
[--process-yuvası-var=isim] [--interaktif] [--ayrıntılı] [--çıkış] [--no-run-if-boş]
[--arg dosyası=dosya] [--sınırları göster] [--versiyon] [--yardım et] [komuta [ilk argümanlar]]
AÇIKLAMA
Bu kılavuz sayfası, GNU sürümünü belgelemektedir. xargs. xargs standarttan öğeleri okur
boşluklarla sınırlandırılmış giriş (çift veya tek tırnak ile korunabilir veya
ters eğik çizgi) veya yeni satırlar ve yürütür komuta (varsayılan /bin/eko) bir veya daha fazla kez
herhangi biriyle ilk argümanlar ardından standart girdiden okunan öğeler gelir. üzerindeki boş satırlar
standart giriş yok sayılır.
için komut satırı komuta sistem tanımlı bir sınıra ulaşana kadar oluşturulur (tabii
the -n ve -L seçenekleri kullanılır). Belirtilen komuta kadar çok kez çağrılacak
girdi öğelerinin listesini kullanmak için gereklidir. Genel olarak, çok daha az olacak
çağırmaları komuta girdide öğeler olduğundan daha fazla. Bu normalde sahip olacak
önemli performans faydaları. Bazı komutlar da paralel olarak çalıştırılabilir;
bakın -P seçeneği.
Unix dosya adları boşluklar ve yeni satırlar içerebileceğinden, bu varsayılan davranış genellikle
sorunlu; boşluklar ve/veya yeni satırlar içeren dosya adları tarafından yanlış işlenir.
xargs. Bu durumlarda kullanmak daha iyidir. -0 böyle bir şeyi engelleyen seçenek
sorunlar. Bu seçeneği kullanırken, üreten programın
için giriş xargs ayrıca ayırıcı olarak boş karakter kullanır. Bu program GNU ise
bulmak örneğin, -baskı0 seçeneği bunu sizin için yapar.
Komutun herhangi bir çağrısı 255 durumuyla çıkarsa, xargs hemen duracak
daha fazla girdi okumadan. Bu olduğunda stderr'de bir hata mesajı verilir.
olur.
SEÇENEKLER
-0, --boş
Girdi öğeleri, boşluk yerine boş bir karakterle sonlandırılır ve
tırnak işaretleri ve ters eğik çizgi özel değildir (her karakter tam anlamıyla alınır).
Diğer bağımsız değişkenler gibi ele alınan dosya dizesinin sonunu devre dışı bırakır. Kullanışlı
girdi öğelerinde boşluk, tırnak işareti veya ters eğik çizgi bulunabileceği zaman. GNU
find -print0 seçeneği bu moda uygun girdi üretir.
-a dosya, --arg dosyası=dosya
Öğeleri oku dosya standart girdi yerine Bu seçeneği kullanırsanız, stdin
komutlar çalıştırıldığında değişmeden kalır. Aksi takdirde, stdin şuradan yönlendirilir:
/ Dev / null.
--sınırlayıcı=sınırlamak, -d sınırlamak
Girdi öğeleri belirtilen karakterle sonlandırılır. Belirtilen sınırlayıcı
tek bir karakter olmak, C tarzı bir karakter kaçışı gibi \n, veya bir sekizli veya
onaltılık kaçış kodu. Sekizli ve onaltılı kaçış kodları şu şekilde anlaşılır:
the printf emretmek. Çok baytlı karakterler desteklenmez. işlenirken
giriş, tırnak işaretleri ve ters eğik çizgi özel değildir; girişteki her karakter alınır
kelimenin tam anlamıyla. NS -d seçeneği gibi işlem gören herhangi bir dosya sonu dizesini devre dışı bırakır
başka herhangi bir argüman. Bu seçeneği, giriş yalnızca aşağıdakilerden oluştuğunda kullanabilirsiniz.
yeni satırla ayrılmış öğeler, ancak programınızı tasarlamak neredeyse her zaman daha iyidir
kullanmak --boş nerede bu mümkün.
-E eof-str
Dosya dizesinin sonunu şuna ayarlayın: eof-str. Dosya dizesinin sonu bir satır olarak ortaya çıkıyorsa
girdinin geri kalanı yoksayılır. eğer hiçbiri -E ne de -e kullanılır, sonu yoktur
dosya dizesi kullanılır.
-e[eof-str], --eof[=eof-str]
Bu seçeneğin eş anlamlısı -E seçeneği. Kullanım -E bunun yerine, POSIX olduğu için
Bu seçenek uyumlu değilken uyumludur. Eğer eof-str atlandı, dosyanın sonu yok
sicim. eğer hiçbiri -E ne de -e kullanıldığında, dosya dizesinin sonu kullanılmaz.
-I değiştir-str
oluşumlarını değiştirin değiştir-str adları okunan ilk argümanlarda
standart girdi. Ayrıca, tırnak içine alınmamış boşluklar girdi öğelerini sonlandırmaz; bunun yerine
ayırıcı yeni satır karakteridir. ima -x ve -L 1.
-i[değiştir-str], --yer değiştirmek[=değiştir-str]
Bu seçeneğin eş anlamlısı -Ideğiştir-str if değiştir-str belirtilir. Eğer
değiştir-str argüman eksik, etki aynı -I{}. Bu seçenek
kullanımdan kaldırıldı; kullanmak -I yerine.
-L maksimum çizgiler
En fazla kullan maksimum çizgiler komut satırı başına boş olmayan giriş satırları. Sondaki boşluklar neden olur
sonraki giriş satırında mantıksal olarak devam ettirilecek bir giriş satırı. ima -x.
-l[maksimum çizgiler], --max-satırları[=maksimum çizgiler]
için eşanlamlı -L seçenek. farklı -L, maksimum çizgiler argüman isteğe bağlıdır. Eğer maksimum
hatları belirtilmemişse, varsayılan olarak birdir. NS -l seçeneği kullanımdan kaldırılmıştır çünkü
POSIX standardı şunları belirtir -L yerine.
-n maksimum argümanlar, --max-arg'lar=maksimum argümanlar
En fazla kullan maksimum argümanlar komut satırı başına argümanlar. Daha az maksimum argümanlar argümanlar
boyutu varsa kullanılacaktır (bkz. -s seçeneği) aşılmadığı sürece -x seçenektir
verilir, bu durumda xargs irade çıkış.
-P maksimum işlemler, --max-proc'lar=maksimum işlemler
kadar koş maksimum işlemler bir seferde süreçler; varsayılan 1'dir. maksimum işlemler , 0 olduğunu
xargs bir seferde mümkün olduğu kadar çok işlem çalıştıracaktır. Kullan -n seçeneği veya
-L ile seçenek -P; aksi takdirde sadece bir yürütmenin yapılması ihtimali vardır. Süre
xargs çalışıyorsa, sayıyı artırmak için işlemine bir SIGUSR1 sinyali gönderebilirsiniz.
aynı anda çalıştırılacak komut sayısı veya sayıyı azaltmak için bir SIGUSR2. Yapamazsın
bunu uygulama tarafından tanımlanan bir sınırın üzerine yükseltin ( --show- ile gösterilir)
sınırlar). 1'in altına düşüremezsiniz. xargs komutlarını asla sonlandırmaz;
azaltması istendiğinde, yalnızca birden fazla mevcut komutu bekler.
diğerine başlamadan önce sonlandırın.
Lütfen notlar paralel olarak doğru şekilde yönetmek için çağrılan süreçlere bağlı olduğunu
paylaşılan kaynaklara erişim. Örneğin, birden fazlası yazdırmaya çalışırsa
stdout'a göre, çıktı belirsiz bir sırada üretilecektir (ve büyük olasılıkla
karışık) süreçler bunu önlemek için bir şekilde işbirliği yapmadıkça. bazı kullanma
bir tür kilitleme şeması, bu tür sorunları önlemenin bir yoludur. Genel olarak, bir kullanarak
kilitleme şeması, doğru çıktının sağlanmasına yardımcı olur, ancak performansı düşürür. Eğer sen
performans farkını tolere etmek istemiyorum, sadece her işlem için düzenleme yapın
ayrı bir çıktı dosyası oluşturmak (veya başka bir şekilde ayrı kaynaklar kullanmak).
-P, --interaktif
Kullanıcıya, her bir komut satırını çalıştırıp çalıştırmayacağını ve komut satırından bir satır okuyup okumayacağını sorun.
terminal. Komut satırını yalnızca yanıt "y" veya "Y" ile başlıyorsa çalıştırın.
ima -t.
--process-yuvası-var=isim
Ortam değişkenini ayarlayın isim çalışan her alt süreçte benzersiz bir değere.
Alt süreçler çıktıktan sonra değerler yeniden kullanılır. Bu ilkel bir şekilde kullanılabilir
örneğin yük dağıtım şeması.
-R, --no-run-if-boş
Standart girdide boşluk olmayanlar yoksa, komutu çalıştırmayın.
Normalde, girdi olmasa bile komut bir kez çalıştırılır. Bu seçenek bir GNU'dur
eklenti.
-s maksimum karakter, --max-karakterler=maks-karakterler
En fazla kullan maksimum karakter komut ve komut dahil olmak üzere komut satırı başına karakter
bağımsız değişken dizelerinin sonundaki ilk bağımsız değişkenler ve sonlandırıcı boş değerler.
İzin verilen en büyük değer sisteme bağlıdır ve bağımsız değişken olarak hesaplanır
yürütme için uzunluk sınırı, ortamınızın boyutu daha az, daha az 2048 bayt
tavan boşluğu. Bu değer 128KiB'den büyükse, varsayılan değer olarak 128Kib kullanılır;
aksi takdirde, varsayılan değer maksimumdur. 1KiB, 1024 bayttır. xargs
daha sıkı kısıtlamalara otomatik olarak uyum sağlar.
--sınırları göster
İşletim tarafından dayatılan komut satırı uzunluğundaki sınırları görüntüleyin.
sistem, xargs' arabellek boyutu seçimi ve -s seçenek. Girişi şuradan borulayın:
/ Dev / null (ve belki de belirtin --no-run-if-boş) eğer istemiyorsanız xargs yapmak için
şey.
-T, --ayrıntılı
Çalıştırmadan önce standart hata çıktısındaki komut satırını yazdırın.
-X, --çıkış
Boyut varsa çıkın (bkz. -s seçeneği) aşılır.
--yardım et seçeneklerin bir özetini yazdırın. xargs ve çıkış.
--versiyon
sürüm numarasını yazdır xargs ve çıkış.
ÖRNEKLER
bulmak / Tmp -tatlı patates çekirdek tipi f -Yazdır | xargs /bin/rm -f
Adlı dosyaları bul çekirdek dizinin içinde veya altında / Tmp ve onları silin. Bunun olacağını unutmayın
yeni satırlar veya boşluklar içeren herhangi bir dosya adı varsa yanlış çalışın.
bulmak / Tmp -tatlı patates çekirdek tipi f -baskı0 | xargs -0 /bin/rm -f
Adlı dosyaları bul çekirdek dizinin içinde veya altında / Tmp ve bunları silin, dosya adlarını işleyin
boşluklar veya yeni satırlar içeren dosya veya dizin adları doğru olacak şekilde
işlenir.
bulmak / Tmp derinlik -tatlı patates çekirdek tipi f -sil
Adlı dosyaları bul çekirdek dizinin içinde veya altında / Tmp ve onları silin, ancak daha verimli bir şekilde
önceki örnekte olduğundan daha fazla (çünkü kullanma ihtiyacından kaçınıyoruz) çatal(2) ve exec(2) için
başlatmak rm ve ekstraya ihtiyacımız yok xargs işlemi).
kesim -d: f1 < / Etc / passwd | tür | xargs kaçırmak
Sistemdeki tüm kullanıcıların kompakt bir listesini oluşturur.
xargs sh -c 'emac'ler "$@" < /dev/tty' emacs
Düzenlemek için gereken minimum sayıda Emacs kopyasını birbiri ardına başlatır.
listelenen dosyalar xargs' standart girdi. Bu örnek, BSD'lerle aynı etkiyi sağlar -o
seçeneği, ancak daha esnek ve taşınabilir bir şekilde.
EXIT DURUMU
xargs aşağıdaki durumla çıkar:
0 başarılı olursa
123, komutun herhangi bir çağrısı 1-125 durumuyla çıkıldıysa
124, komut 255 durumuyla çıktıysa
125, komut bir sinyal tarafından öldürülürse
126 komut çalıştırılamıyorsa
127 komut bulunamazsa
1 başka bir hata meydana gelirse.
128'den büyük çıkış kodları, kabuk tarafından bir programın bir hata nedeniyle öldüğünü belirtmek için kullanılır.
ölümcül sinyal
STANDARTLAR UYGUNLUK
GNU xargs 4.2.9 sürümünden itibaren, varsayılan davranışı xargs mantıklı olmak değil
dosya sonu işaretçisi. POSIX (IEEE Std 1003.1, 2004 Edition) buna izin verir.
-l ve -i seçenekleri, POSIX standardının 1997 sürümünde görünür, ancak görünmez
standardın 2004 versiyonunda. Bu nedenle, bunun yerine -L ve -I kullanmalısınız,
respectivamente.
POSIX standardı, uygulamaların, argümanların boyutu üzerinde bir sınıra sahip olmasına izin verir.
exec fonksiyonlar. Bu sınır, dosya boyutu da dahil olmak üzere 4096 bayt kadar düşük olabilir.
Çevre. Komut dosyalarının taşınabilir olması için daha büyük bir değere güvenmemeleri gerekir. Yine de,
Gerçek sınırı bu kadar küçük olan hiçbir uygulama bilmiyorum. NS --sınırları göster seçenek
mevcut sistemde yürürlükte olan gerçek sınırları keşfetmek için kullanılabilir.
onworks.net hizmetlerini kullanarak xargs'ı çevrimiçi kullanın