Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

linux te shell scriptler le ilgil bir soru!


mexinth

Öne çıkan mesajlar

Şimdi bizden bazı şeyler isteniyor linux shell scriptle yapmamız için
mesela bir tanesi şu

"Give a Shell Script that gives a list of all numbers divisible by 5 that are between twon numbers given in the command line"
bayağı karaladım ama hemn c++ da yeniyim hemde scriptler için kaynak az.
Nasıl yapabilirim modulus filan denedim ama olmadı

birde "Give a shll script that takes two numbers from the command line and prints the relations between them (>, =, <=, etc. )

bir el atarsanı sevinirim.[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

#!/bin/sh
declare -i ab
a=$1
b=$2

if $a > $b
then
echo " $a > $b
if $a < $b
then
echo " $a > $b "
if $a = $b
then
echo " $a = $b "
fi

en alttaki için bunu yazdım, ama son satırda uygunsuz son gibi birşeyler geveliyor. Bunun c lisinide yazdım
#!/bin/sh
#include ile başlayan ama işe yaramadı...[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

#!/bin/bash
echo "First integer : "
read -ep "${1}" A
echo "Second Integer : "
read -ep "${1}" B

if [ $A -gt $B ]; then
echo "$A is greater than $B."
elif [ $A -lt $B ]; then
echo "$B is greater than $A."
elif [ $A -eq $B ]; then
echo "$A is equal to $B."
fi



en basta belittigin !#/path/filename bir interpreterdir. Yani o dosya calistirilarak bu islemler gerceklestirilir.. Yani aynen tahmin ettigin gibi !#/path/to/php/php dersen PHP ile yazdigin bir betik calisacaktir.[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net
Link to comment
Sosyal ağlarda paylaş

hım anlıyorum ama o sayılar arasında ki ilişkilerde fi ler her bir if e karşılık gelmeliymiş. üç fi ile olayı bitirebilirmişim.

Senin yazdığın kodların bazılarının anlamını bilmiyorum, kaynak olarak nereyi önerirsin. c++ ile shell arasında birşeyler geveleyincede karışıyor.

Tabi bulmuşken çok sağlam bir sorum olacak (gene kaynak olmadığından yeterli tutorial larla çözülmüyor malesef)

ilk başta yazdığım 2 sayı verip bu 2 sayı arasında 5 e tam bölünenleri bulma
modulus - % - işlemini denedim ama tam tanıtamadım.

birde çok geyik son bir sorum var

prepare a text file a.txt that contains lines like this
Name Lastname: Department: Number: Grade

Fatih Terim: Gs: 9802021: BB
Mustafa Denizli: MS: 9602012: CB

gibi istenen scriptte hem bu üstteki name vs gibi kolonların altına isme ismi, numaraya no yu filan koymam.

- Sadece isimleri yazdırmam
- Sadece isim ve notlar
- Her departmandaki noları yazdırmam
- add a file şekline bir şey var olan yapıya gene böyle veri girişi
- herangi bir numarayı değiştirme
- ba alanları listelemek
- bir satırı silmek
- it dışındakileri göstertmek
-tüm gs leri cimbom ismi ile değiştirtmek
- 98 no ile başlayanları göstertmek.

bu çok uzun geldi ve komplike aynı zamanda 2-3 sayfa sürebilir yeni bir programcı için.

modulusluda yardımcı olursan sevinirim... Bunu zahmet olmazsa hallet :) c++ bilgime dayanarak kasacağını düşünüyorm[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

Umarim bunu ukalalik olarak algilamazsin.

Hevesli bir adam herseyi ogrenebilir, sen de de - her ne kadar biraz zorundaliktan gelen bir bikkinlik olsa da - bir hayli yuksek bir enerji mevcut su anda. Bu tur bir adamin da ogrenebilitesini kiran tek sey, adamin arastirmasina engel olmak ve daha o sormadan herseyi soylemek.

Yazdigim scriptte bir sey yoktu, tek farki sen sh i kullaniyordun, ben bash `i. IF `in syntax `i oyle bashte. Yani

if [ OPTIONS $var1 OPTIONS $var2 ]; then
.. . . .. . .
fi

Oradaki optionslar ise soyleydi ;
-lt : Lesser Than
-gt : Greater Than
-eq : Is Equal

Bash ile aritmetik islemlerde pek iyi degilim. Zaten yine de "Neydi bu ya ?" modunda manual page lere bakmak zorunda kaldim. Modulus `u bir function olarak yazip, IF de function dan gecirebilirsin degeri, her neyse..

Bunlar icin benim kullandigim tek kaynak :

~# man bash

idi :) Ama nette aratirsan, harika bir Bash Scripting Tutorial adli bir dokuman bulabilirsin, vakti zamaninda cok yararlanmistim. Basit seyleri harika anlatir..

String islemleri icin ise, bash in icinde awk, gawk, sed gibi seyler kullanabilirsin.[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net
Link to comment
Sosyal ağlarda paylaş

hmm ben shell script tutorial arattım, genel bilgileri harika vermişler hatta totalde 4-5 saat değişik modlarda programlama yazdım

execute olaylarını ayarlarken bir şey bekledim linuxten yapmadığundan çok dolandım durdum

chmod u+x / +x veya 777 ile yapabileceğim permission ı verdim.
./dosya adı dedim ve enterladım
zannettim ki read gibi benen 2 sayıyı isteyecek, ne gezerr
./dosya 1 2 şeklinde girmek gerekiyormuşi

mesela bash yapılan basit bir sh programı command line dan 2 değer girerek toplama , çarpma yaptırmak deli etmişti beni hatanın ne olduğunu öğrendiğimde ii delirdim
1. türü

!#/bin/sh

declare -i a b c
a=$1
b=$2
c=$a+$b

echo $ c
bunu yaptıktan sonra command line da ./dosyaadı ve sayıları girmem gerekiyor bunu bilmiyordum direk isteyecek sandım :)

neyse 2. türü

#!/bin/sh

declare -i a b c

echo " The Sum of these two integers are: "
read a b
expres $a + $b

echo " Product of these two integers are: "
read a b
expres $a * $b

bu tarz birşeyler denemiştim ama srun çıkarmıştı.

Şimdi c++ take home examımı yapacağım. O yüzden linux e bakama şimdi (arada kablonetim ve linuxte interneti ayarlatamadım. )[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

Vmware gibi harika programlar var.. Eger kurarsan, bir yandan Windows`unu bir yandan Linux`unu kullanirsin :)

Linux `ta Kablonet`i neden tanitamadin ? Kablonet`in bagli oldugu ethernet`in modulunu yuklemen ve /sbin/dhcpcd yi calistirman yeterli :) Kendisi IP yi alir :)

Ya bir de /etc/resolv.conf `a ns leri eklemek lazim. ( 212.156.4.4 212.156.4.20 )[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net
Link to comment
Sosyal ağlarda paylaş

said:
mexinth, 18 December 2003 00:06 tarihinde demiş ki:
bu arada avatarında ki tux a bayıldım :)[hline]sonunda yeniledim.


Super Tux O :)
sharky, slackware, super tux hatta :)

Bir ara Ethernass`taki gecen bir geyik uzerine S yapistirmistim. Her neyse konumuz disi, hazir yeni alan bilmemnesi olmusken, konu disina cikip ornek adam rolunu almayalim uzerimize :)[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net
Link to comment
Sosyal ağlarda paylaş

modem harici haliyle kablo olduğundan
usb modem diye görüyor ama unknown a sokuyordu,
disketini taktım linux yok :p

/sbin/dhcpcd bunu rpm den aratacağım.

vmware var bilgisayarda ama paket olarak güvenmediğimde böyle değişen sistem olayına kurmadım.
Partition Magicle 2,5 gb lik bir alan yarattım ext2 uzantılı, sonra cd boot ile kurdum linuxu 40 dk filan sürdü.
Tabi şimdi o linuxu silip vmware den linux yükletebilirim ama bir sisteme alışmanın en iyi yolunun sırf o sisteme dayalı çalışma olduğunu düşünüyorum. Linux e ilk girdiğimde kde 3.1 desktop var mesela alışamamıştım şimdi çok güzel geliyor. Hele 4 masaüstü ve 6 konsol olması ayrı ayrı ctrl alt f1 f6 ile gayet güzel. Dirençli bir işletim sistemi linux, open office te harika. Yani her eve lazım aslında, yavaş yavaş alışmak lazım[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

VMware ile varolan bir isletim sistemini de boot edebilirsin. Yani sisteminde hem Linux hem de Windows kuruluysa, birinden birini, hatta sonra tekrar birinden birini boot edebilirsin.

USB ile hic denemedim kablonet`i.. MS makinalarda bile, bilemeyecegim o yuzden :)

Bu arada Gnome `u oneririm. Gayet basarili :) KDE biraz hantal kaliyor.

[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net

[Bu mesaj sharky tarafından 18 December 2003 00:28 tarihinde değiştirilmiştir]
Link to comment
Sosyal ağlarda paylaş

bende 3 İS var
win 98, sonra win xp yükledim ve en son olarak linux mandrake 9.1
vmware kurabilrim haftasonu yada cuma madem öyle. Güzel yani - kabloneti evde ki yerel ağa dağıttığından xp 1. derecede önem taşıyor. xp ile açar gene vmware le çalıştırırm, alıştırmaları rahat yaparım .

iyi oldu bu bilgi..

Bu arada SUSE davalık olmuş, eğer kaybederlerse linuxler için lisans almak gerekecekmiş miş miş, yeni haber bu.[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

Duymadim oyle bir sey.. O sadece SuSE icin gecerli olabilir. Novell satin aldiktan sonra bir kac sey bekleniyordu zaten, fakat lisanslanma beklenmiyordu :)

Linux, kernelden ibarettir ve lisansi GPL.[hline]There are 10 types of people in the world: Those who understand binary, and those who don't..
Ethernass Sys. Adm., Sys. Security Prv., Ethernass Rsp.
www.ekohost.net
Link to comment
Sosyal ağlarda paylaş

hafif yorulmuş vaziyetteyim, şimdi c++ da kod yazıyorum.
bizden istenen 4 tane kordinat üzerine bir diktörgen tanımlatmak tabi tüm kordinatlar 1. quadrantta olacak. Bu dikdörtgenin başta dikdörtgen olabilmesini sağlamak, sonra bu kare mi değil mi ölçmek, arada alan ve çevre hesaplamak.
ilki header file . sorunsuz
ikincisi source file hala sorunlar var
sonuncusu driver file, source sorunsuz olana kadar buna bakamıyorum malesef.

tabi kafadan yazınca biraz uzun oldu 8 int değeri gibi...

hata mesajı şu: 'void __thiscall Coordinates::getCoord(void)' : overloaded function differs only by return type from 'int __thi

bu tam olarak ne demek tabi get te ki return de 8 değer var acaba ondan mı? demekten kendimi alamıyorum.[hline]sonunda yeniledim.
Link to comment
Sosyal ağlarda paylaş

hm hallettim get fonksiyonunu int yerine void Coordinates::getCoord olarak başlatmışım.

doğrusu int Coordinates::getCoord hop 7 error kaldı
19 la başlamıştım :))

son 2, ama en kazıkları bunlar olacak sanırm hmmm , çalış öğün , güven


[hline]sonunda yeniledim.

[Bu mesaj mexinth tarafından 18 December 2003 03:25 tarihinde değiştirilmiştir]
Link to comment
Sosyal ağlarda paylaş

×
  • Yeni Oluştur...