Re: [Linux-programlama] linux programlama ödevi

---------

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

From: Serkan Coban (mesaj.listeleri@gmail.com)
Date: Wed 04 Jan 2006 - 09:48:01 EET


En basit haliyle: $1=n (satir sayisi) $2=1.dosya, $3=2.dosya, bastanbenzer 3
a.txt b.txt seklinde calistirabilirsiniz. Gerekli ekleme ve cikarmalari
scripti inceleyerek deneme yanilma yontemiyle yapabilirsiniz...

#! /usr/bin/bash

head -n $1 $2 > temp1
head -n $1 $3 > temp2

ayni=`diff temp1 temp2`

[ -z "$ayni" ] && echo "AYNI"

rm temp1 temp2

On 1/4/06, ozi@ozunix.com <ozi@ozunix.com> wrote:
>
> 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
>
>
>

_______________________________________________
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.