runawk

Yazılım ekran görüntüsü:
runawk
Yazılım detaylar:
Versiyon: 1.5.0
Qayıt: 19 Feb 15
Geliştirici: Aleksey Cheusov
Lisans: Ücretsiz
Popülerlik: 20

Rating: nan/5 (Total Votes: 0)

runawk modülü sistemini impements ve bağımsız AWK programları yazmak için yardımcı olur AWK tercüman için küçük bir sarıcı.
MOTİVASYON
Programlama için AWK kullanarak yıl sonra buldum rağmen bu
sadeliği ve sınırlamalar AWK geniş komut dosyası için yeterince iyi
Farklı görevler aralığı. AWK bunların büyük kadar güçlü değildir
Perl, Ruby, TCL ve diğerleri gibi mevkidaşları ancak kendi vardır
hemen hemen tüm ilgili kompakt, sadelik ve kullanılabilirlik gibi avantajları
UNIX benzeri sistemler. Ben şahsen ayrıca veri tabanlı doğa gibi ve
belirteç yönelim, basit metin işleme için çok yararlı bir tekniktir
yarar.
Ama! Ne yazık ki tercümanlar bazı önemli özellikleri yoksun awk ve
bazen olması whould kadar iyi değil çalışır.
Bazı sorunlar (elbette bazıları,) bkz.
1) AWK modülleri için destek yoksun. Ben küçük programlar oluşturmak bile, ben
genellikle daha önce oluşturduğunuz işlevleri kullanmak istiyorsanız ve zaten kullanılan
Diğer komut. Yani, içine fonksiyonları organize etmeyi büyük whould
böylece kütüphaneler (modüller) denir.
2) # argümanlar geçmek için! / Usr / bin / awk -f komut (değil awk için
Tercüman), bunun bir listesini prepand için gerekli
(iki eksi Signes) - ile argümanlar. Benim görüşüme göre, bu kötü görünüyor.
Örnek:
awk_program:
& Nbsp; & nbsp; & nbsp; #! / Usr / bin / awk -f
& Nbsp; & nbsp; & nbsp; BAŞLA {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; for (i = 1, i, argon & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; printf "ARGV [% d] =% s" i, ARGV [i]
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
Kabuk oturumu:
& Nbsp; & nbsp; & nbsp; % Awk_program --opt1 --opt2
& Nbsp; & nbsp; & nbsp; / Usr / bin / awk: göz ardı bilinmeyen seçenek --opt1
& Nbsp; & nbsp; & nbsp; / Usr / bin / awk: göz ardı bilinmeyen seçenek --opt2
& Nbsp; & nbsp; & nbsp; % Awk_program - --opt1 --opt2
& Nbsp; & nbsp; & nbsp; ARGV [1] = - opt1
& Nbsp; & nbsp; & nbsp; ARGV [2] = - opt2
& Nbsp; & nbsp; & nbsp; %
Bence awk_program script gibi (bu gibi çalışması gerekir
Normal programlar yapmak)
& Nbsp; & nbsp; & nbsp; % Awk_program --opt1 --opt2
& Nbsp; & nbsp; & nbsp; ARGV [1] = - opt1
& Nbsp; & nbsp; & nbsp; ARGV [2] = - opt2
& Nbsp; & nbsp; & nbsp; %
Bu runawk kullanarak mümkündür.
3) #! / Usr / bin / awk -f komut argümanlar (seçenekleri kolları) ve istediği zaman
stdin'den okumak için bu eklemek gerekir
Explicitely son argüman olarak - / dev / stdin ('veya `).
Örnek:
awk_program:
& Nbsp; & nbsp; & nbsp; #! / Usr / bin / awk -f
& Nbsp; & nbsp; & nbsp; BAŞLA {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; {(ARGV [1] "--flag" ==) ise
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; flag = 1
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ARGV [1] = "" isimli dosyayı okumak değil # "--flag"
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; print "bayrak =" bayrak "0 $ =" 0 $
& Nbsp; & nbsp; & nbsp; }
Kabuk oturumu:
& Nbsp; & nbsp; & nbsp; % Yankı testi | awk_program - --flag
& Nbsp; & nbsp; & nbsp; % Yankı testi | awk_program - --flag / dev / stdin
& Nbsp; & nbsp; & nbsp; bayrak = 1 $ = 0 Test
& Nbsp; & nbsp; & nbsp; %
İdeal awk_program bu gibi çalışması gerekir
& Nbsp; & nbsp; & nbsp; % Yankı testi | awk_program --flag
& Nbsp; & nbsp; & nbsp; bayrak = 1 $ = 0 Test
& Nbsp; & nbsp; & nbsp; %
Tüm bu probles runawk tarafından çözülür ve bunu yazdım bu yüzden.
Ben de dağıtım runawk birkaç modülleri içerir
Benim için yararlı ve ben de sizin için yararlı olacağını umuyoruz.
MONTAJ
0) BSD yapmak gereklidir. Ben sadece 'yapmak' adını ancak onun gerçek ismi olabilir
& Nbsp; & nbsp; . & nbsp değişir; bmake ve pmake olası isimler.
& Nbsp; & nbsp; Varsayılan yapı seçeneklerini değiştirmeniz gerekirse,
& Nbsp; & nbsp; Böyle yapmak koşmak
& Nbsp; & nbsp; & nbsp; & nbsp; env [YOUR_ASSIGNMENTS] yapmak
& Nbsp; & nbsp; Aşağıdaki örnek bölümüne bakın
Eğer böyle indirdiğiniz 1) Sıkıştırılmış arşivini
& Nbsp; & nbsp; Gzip -dc runawk-X-Y-Z.tar.gz | katran -xf-
2) CD runawk-X-Y-Z,
3) yapmak
4) (opsiyonel!) Install-dizinleri yapmak
5) make install
Sırasında değiştirilebilir Makefile değişkenlerin bir yeri vardır
. kurulum & nbsp; Runawk kendi değişkenleri (Tüm bunlar başında olan
Makefile):
& Nbsp; PREFIX & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; - Runawk yüklenir
& Nbsp; MODULESDIR & nbsp; & nbsp; & nbsp; & nbsp; - Modüller yüklenir dizin
& Nbsp; AWK_PROG & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; - Awk tercüman yolu
& Nbsp; STDIN_FILENAME - yol stdin cihaz dosyası
En sık kullanılan BSD make 'değişkenleri (,
tüm diğerleri için -) make 'belgelerine ve .mk dosyaları görmek
& Nbsp; BINDIR - Nerede kendisi yüklü yürütülebilir runawk
& Nbsp; MANDIR - manuel sayfaları yüklü nerede
& Nbsp; BINOWN - yürütülebilir sahibi runawk
& Nbsp; BINGRP - yürütülebilir grup runawk
& Nbsp; MANOWN - erkek sayfa sahibi
& Nbsp; MANGRP - erkek sayfa grubu
Örnek:
& Nbsp; & nbsp; env CC = gcc
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ÖN EK = / home / cheusov / yerel
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; LDFLAGS = '- L / usr / pk / lib -Wl, -Wl -rpath, / usr / pk / lib'
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; LDADD = -lextralib
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; CFLAGS = '- Werror -Wall'
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; CPPFLAGS = -I / usr / pk / include
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; BINOWN = cheusov
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; BINGRP kullanıcıları =
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; MANOWN = cheusov
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; MANGRP kullanıcıları =
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; MKCATPAGES yok =
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; -s tüm dirs yüklemek

Bu sürümde Yeni nedir make install:

  • seçenekler -i, -I, ve tüm uzun seçenekler tamamen çıkarıldı.
  • seçeneği -T sekmeli giriş için eklenmiştir.
  • man sayfasında belgelenmiştir -v seçeneği.
  • gcc derleme uyarıları için Düzeltmeler.

  • Boş olmayan MAKEOBJDIR ile derleme için Düzeltmeler
  • .
  • YENİ runcmd.awk ve man sayfalarında Tipo düzeltmeleri.

sürüm 1.4.4 yeni nedir :

geçici bir dizinde alt dizinleri kaldırarak bir hata

  • oldu Sabit.
  • runawk_modules.3 için iyileştirmeler.

nedir sürüm 1.4.3 Yeni:

  • paexec (1) kullanmaz sistemi ( 3) Artık geçici dizini kaldırmak için.
  • fonksiyon print_help () init_getopt.awk için power_getopt.awk modülünden taşındı.

nedir sürüm 1.4.2 Yeni:

  • Bu sürüm tüm modülleri runawk_modules.3 ekler belgelenmiş, uzun seçenekler artık kullanılmayacağı -i ve -I seçenekleri kaldırır ve pod2man bina için gerekli değildir, böylece dağıtım arşivini adam sayfalarını içerir.

sürüm 1.4.0 yeni nedir:

  • exitnow.awk ise, exitnow (durum) işlevi artık SON bölümleri çalıştırmadan komut yürütme bitse dahi, durum == 0.
  • işlevleri is_ {dosya, dir, exec, soket, fifo, blockdev, chardev, sembolik} içeren io.awk yeni modül, file_size ve FILE_TYPE. tokenre.awk yeni işlev splitre0 vardır ().

sürüm 1.3.2 yeni nedir:

  • İç diziler artık otomatik olarak taşındı. Bu Xargs (1), örneğin, kedi files.txt ile kombinasyon halinde runawk: (1) düzeltmeleri |. Xargs runawk -e '...'

sürüm 1.3.0 yeni nedir:

  • Intel C derleyicisi uyarı mesajı için bir düzeltme.

  • Modüller / shquote.awk
  • fonksiyon shquote (A düzeltme).
  • projenin kaynak kodu, böylece kolay herhangi bir alt proje kurulumu sağlayan, yeniden olmuştur:. Örnekler, modülleri, runawk, alt_getopt ve doc (TODO, README, vb dosyaları)

sürüm 1.1.0 yeni nedir:

  • -F seçeneği eklendi
  • Yeni ord.awwas ftrans_in.awk ve glob.awk modülleri dahil edildi.
  • Yeni alt_getopt yürütülebilir kabuk komut kısa ve uzun seçenekleri ayrıştırma dahil edildi.
  • Yeni min3, min4, MIN5, min_key, MIN_VALUE ve key_of_min_value (min.awk), ve max3, max4, max5, max_key, MAX_VALUE ve key_of_max_value (max.awk) işlevleri verilmiştir.
  • Yeni örnekler eklenmiştir:. Örnekler / demo_minmax, örnekler / demo_tokenre3, örnekler / demo_ftrans, örnekler / demo_glob *
  • Yeni bir özellik multisub.awk eklendi.
  • Küçük iyileştirmeler kurulum prosedüründe yapılmıştır.

nedir sürüm 0.16.0 Yeni:

  • çoğu runawk modülleri demo programları sürü oluşturulan ve onlar şimdi örnekler / dizininde bulunmaktadır. Yeni MEGA modül;-) dokümantasyon ve demo programı örnekleri / demo_power_getopt bakın power_getopt.awk. Bu gerçekten kolay taşıma seçenekleri yapar. Yeni modüller: embed_str.awk has_suffix.awk has_prefix.awk readfile.awk modinfo.awk Küçük düzeltmeler ve dirname.awk ve basename.awk gelişmeler. Şimdi dirname (1) ve İşlevi ile tam uyumludur (1) RUNAWK çocuk awk alt işlemi için aşağıdaki ortam değişkenlerini ayarlar: RUNAWK_MODC - AWK RUNAWK_MODV_ geçti modülleri bir dizi (-f dosya) - Tam yolunu modülü #n için n, [0..RUNAWK_MODC) aralığında olduğunda. 'Awk en argümanları listesine eklendi - `ek / yapay eğer RUNAWK 1 çocuk awk alt işlemi için RUNAWK_ART_STDIN ortam değişkeni ayarlar. Makefil'ı: bmake-izm çıkarıldı. Şimdi Makefile FreeBSD make ile tam uyumludur. CLEANFILES hedef 'test_all' hedef el yapımı kurallar Minör düzeltmenin yerine kullanılır

Benzer yazılım

Pyastra
Pyastra

3 Jun 15

PL/1 for GCC
PL/1 for GCC

2 Jun 15

TXR
TXR

18 Jul 15

Geliştirici Diğer yazılım Aleksey Cheusov

DictEm
DictEm

20 Feb 15

LMDBG
LMDBG

20 Feb 15

paexec
paexec

20 Feb 15

Yorumlar runawk

Yorum Bulunamadı
Yorum eklemek
Görüntülerde açın!