Bir dosyanın boş olup olmadığını kontrol etme

Shell script yazarken bir dosyanın boş olup olmadığını kontrol etmemiz gerekebilir. Bunu yapmak için birkaç yöntem yazacağım.

satirsayisi=`wc  -l 194.27.108.90  | awk '{split($0,a," "); print a[1]}'`
if [ $satirsayisi == 0 ]; then echo "dosya bos"; fi
if [ -z $(cat dosyaadi) ]; then echo "dosya bos"; fi
if [ -z `cat dosyaadi` ]; then echo "dosya bos"; fi

Ve en güzeli

if [ -s dosyaadi ]; then echo "Dosya dolu"; else echo "Dosya bos"; fi

Solariste Özyinelemeli grep

Özyinelemeli grep çok kullanışlı bir araç. Malesef solariste bulunan grep öz yinelemeli çalışmıyor. Ama bunu aşmak çok zor değil.

$ grep 'ara' `find . -name '*'`
bash  find  grep  solaris 

BusyBox - date ile saat ve tarihi ayarlamak

BusyBox içinde gelen date komutunun kullanımı biraz daha farklı. Saat ayarlamada bir değişiklik yok fakat tarihi ayarlamak biraz daha farklı. Saat ayarlama:

date -s "23:59:59"

Tarih ve saati ayarlama

date -s AAGGSSDDYYYY
date -s 123123592010

12-31-2010 23:59’a karşılık geliyor.

bash  busybox  date  Linux  saat 

Genius!

Scp ile sembolik linkleri takip etmeden indirme işlemi yapmak için araştırma yaptığımda, aşağıdaki kodu buldum. Böyle bir kullanım 40 yıl düşünsem aklıma gelmezdi.

cd /destination/directory
ssh user@remote.host "cd /original/directory; tar cf - ./" | tar xvf -

Kaynak

bash  Linux  ssh  symlink