GNU awk kullanma
GNU awk kullanıcı kılavuzunu kontrol etme - 7.5.2 Aşağıdakilere rastladığım bilgileri ileten yerleşik değişkenler :
PROCINFO #
Bu dizinin öğeleri çalışan awk programı hakkındaki bilgilere erişim sağlar. Aşağıdaki öğelerin (alfabetik olarak listelenmiştir) kullanılabilir olması garanti edilir:
PROCINFO [ "PID" ']
Geçerli işlemin işlem kimliği.
Bu, çalışma zamanı sırasında programın PID'sini bildiğiniz anlamına gelir. Daha sonra, system()
bu verilen PID ile süreci aramak için bir mesele kullanılır :
#!/usr/bin/gawk -f
BEGIN{ pid=PROCINFO["pid"]
system("ps -ef | awk '$2==" pid " {print $NF}'")
}
Ben ps -ef
, 2. sütunda PID görüntüleyen kullanın . Executiong üzerinden yapıldığını awk -f <script>
ve başka parametreler olmadığını varsayarsak, satırın son alanının istediğimiz bilgileri içerdiğini varsayabiliriz.
Bazı parametrelerimiz olması durumunda, satırı farklı şekilde ayrıştırmamız gerekir -veya daha iyisi, ps
sadece ilgilendiğimiz sütunları yazdırmak için bazı seçeneklerden faydalanmamız gerekir.
Ölçek
$ awk -f a.awk
a.awk
$ cp a.awk hello.awk
$ awk -f hello.awk
hello.awk
Ayrıca GNU awk kullanım kılavuzunun başka bir bölümünün ARGV'nin gidilecek yol olmadığını söylediğini unutmayın:
1.1.4 Yürütülebilir awk Programları
Son olarak, ARGV [0] değeri (bkz. Yerleşik Değişkenler) işletim sisteminize bağlı olarak değişir. Bazı sistemler oraya 'awk', bazıları awk'ın tam yol adını (/ bin / awk gibi), bazıları ise betiğinizin adını ('tavsiye') koyar. (dc) Komut dosyası adınızı sağlamak için ARGV [0] değerine güvenmeyin.