RE: [Linux-programlama] linux programlama ödevi

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: ozi@ozunix.com
Date: Wed 04 Jan 2006 - 08:58:56 EET


Merhabalar,

Aşağıda zamanında bir dosyanın header ve foother bilgilerini kontrol eden
bir script yazmıştım.Buna bakarak kendi istediğinizi yazabilirsiniz.Dikkat
etmeniz gereken yer FI ve HI bunlar benim dosyamın ozellikleri HI:header
bilgisi FI:Foother bilgisi yani dosyanın başında HI ,dosyanın sonunda FI
var mı diye bak ayrıca kayıt uzunluğunuda hesaplıoyor.Aslında sizinki çok
daha basit.Buna bakın eğer yapamassanız zamanım olursa sizin için ufak
birşeyler yazarım.Onemli olan head ve tail komutları.her iki dosyanıızın
head -1 dosya tail -1 dosya derseniz dosyanızın 1 ve en son satırlarını
getirir.Sonra bunları karşılaştırın.Tabii oncesinde iki dosya ismini
parameytre olarak girmeniz gerekir.Bash ta parametre $1,$2,$3 .... diye
gider.

Kolay gelsin...

#!/usr/bin/ksh
#Dosya Kontrol Scripti

##########################Degiskenler
Ataniyor##################################
        basla()
{
dosyabasi=`head -1 ${1}`
dosyasonu=`tail -1 ${1}`

kayuz=`sort ${1} | head -1 |wc -c`
charsay=` wc -c ${1} | cut -c 1-9`
linesay=` wc -l ${1} | cut -c 5-9`
echo "KarakterS : $charsay \nSatirS : $linesay \n"
echo "Hatalar :"
##########################Header ve Foother Bilgileri Kontrol
ediliyor#########################################
if echo ${1} |grep -n "^HI-" && echo ${dosyasonu}| grep -n "^FI-"
                then
                echo "Dosyanin Header ve Foother Bilgileri Dogru Oldugundan
Dosya Sorunsuzdur... "
                else
                        echo "Dosyanin Header ve Foother Bilgileri Hatali
oldugundan Dosya Bozuktur\n"
                        grep -En "HI-|^FI-" ${1}
                        echo "\nFoother Hatasi:"
                        grep -nEv "^HI-|^FI-|^D0" ${1}
fi
###########################Kayit Uzunlugu Kontrol
ediliyor#############################
if [ $kayuz -ne "217" ]
        then
        echo "\nBu dosyanin kayit uzunlugunda hatalar mevcuttur.\nBunlar:\n"
        awk 'length >218{ print FNR, $0 }' ${1}| sort
        awk 'length <217{ print FNR, $0 }' ${1}| sort
        else
        echo "Bu dosyanin kayit uzunlugu dogrudur"

fi
############################################################################
######

}

dosyadur=${1:-$(echo bos)}
        echo "Dosya ismi: $dosyadur"
if [ "${dosyadur}" != "bos" ] && pwd | ls *.*|grep "${dosyadur}"
        then
                basla $dosyadur
        echo "Kontroller yapilip bilgiler verilmistir..."
        else
        echo "Dosya ismini kontrol ediniz!"
        exit
fi

Original Message:
-----------------
From: Neslihan Neslihan teardrop_1980@hotmail.com
Date: Tue, 03 Jan 2006 22:06:42 +0000
To: linux-programlama@liste.linux.org.tr
Subject: [Linux-programlama] linux programlama ödevi

<html><div style='background-color:'><DIV class=RTE>
<P><FONT color=#0000cc>Merhaba arkadaşlar linuxu kullanmaya yeni
başladım.Herşey o kadar karışık gözüküyor ki.Bir ödevim var yardımcı
olabilir misiniz.Teşekkürler.</FONT></P>
<P> </P>
<P>Ödev konusu:İki dosyanın baş kısımlarının aynı olup olmadığını kontrol
eden bir </P>
<P>kabuk programı (script)</P>
<P> <STRONG>bastanbenzer </STRONG><EM>n dosya1 dosya2</EM></P>
<P>Program, verilen iki dosyanın ilk <STRONG><EM>n</EM></STRONG>
satırlarının aynı olup olmadığını kontrol ederek standart çıktıya "aynı"
veya "farklı" mesajını yazacak. Programın ilk parametresi baştan kaç
satırın karşılaştırılacağını belirleyecek. Sonraki iki parametre de
karşılaştırılacak dosyaların isimleri olacak.</P>
<P>Dosyalardan en az birinin boyu <STRONG><EM>n</EM></STRONG> satırdan kısa
ise program "farklı" cevabı vermelidir</P></DIV></div><br clear=all><hr> <a
href="http://g.msn.com/8HMAENUS/2752??PS=47575" target="_top">Make FREE
PC-to-PC calls with MSN Messenger. Get it now! </a> </html>

--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.