Bash ile Programlama. Cem Ahmet Mercan. Ulusal Yüksek Başarımlı Hesaplama Merkezi (UHeM) 13 Temmuz 2017

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Bash ile Programlama. Cem Ahmet Mercan. Ulusal Yüksek Başarımlı Hesaplama Merkezi (UHeM) 13 Temmuz 2017"

Transkript

1 Bash ile Programlama Cem Ahmet Mercan Ulusal Yüksek Başarımlı Hesaplama Merkezi (UHeM) 13 Temmuz 2017

2 Neden, Niye, Ne gerek var? Python daha iyi! C daha hızlı! Java her yerde... 1) Zaten yapmayı bildiğimiz komutlar, 2) Bash her yerde mevcut, 3) API (Uygulama Program Arayüzü) ye gerek yok, 4) CLI (Komut Satırı Arayüzü) ünde de geçerli, 5) Derleme vb. Gerekmez, çok kolay. 2

3 Betik Hazırlama (Script) Betik derlemeden doğrudan çalıştırılabilir, karakterlerden oluşmuş program dosyasıdır. Herhangi bir yazı editörü ile program hazırlayabiliriz: nano ilkbetik.sh yada vim ilkbetik.sh sh uzantısı zorunlu değildir, kendimizin bu dosyanın bir shell betiği olduğunu kolayca anlamamız için sadece. 3

4 nano Editörü 4

5 ilkbetik.sh echo "Merhaba dünya!" mkdir AHMET ls -alh AHMET 5

6 Source Komutu $ source ilkbetik.sh Merhaba dünya! Yada kısa şekli $. ilkbetik.sh Merhaba dünya! Bu komut sanki dosyadaki komutları kopyalayıp, shell komut satırı arayüzüne yapıştırmışız gibi komutları zaten açık olan bash de çalıştırır. 6

7 ilkbetik.sh #!/bin/bash echo "Merhaba dünya!" mkdir AHMET ls -alh AHMET Bir betiği doğrudan çalıştırmaya çalıştırdığımızda, dosyanın ilk iki karakteri #! ise bu karakterlerden sonra gelen komut bu dosyadaki satırları çalıştırmak için kullanılır. 7

8 Doğrudan Çalıştırılabilir Betik $./ilkbetik.sh bash:./ilkbetik.sh Permision denied şeklinde çalıştırmak için betik dosyasına çalıştırma hakkı vermeliyiz: $ chmod +x./ilkbetik.sh $./ilkbetik.sh Merhaba dünya! 8

9 Yorum (Comment) Eklemek Bash, # işaretinden satır sonuna kadar olan bölümü yorum olarak değerlendirip çalıştırmaz: #!/bin/bash # Bu program Kullanıcı haklarını düzeltir # Hazırlayan: Cem Ahmet Mercan # echo "Bu yazı yazılmayacak" mkdir AHMET #AHMET isimli bir dizin açılıyor 9

10 Değişkenler

11 Değişken Tanımlama Değişken isimleri harfle başlayıp; harf, rakam yada _ karakteri ile devam edebilir. Türkçeye özel karakterler isim için kullanılamaz. Harflerin büyük yada küçük olmasına duyarlıdır. Yani $PATH ile $Path yada $path değişkenleri tamamen farklıdır. Değişkenlerin değerine başına $ işareti konularak erişilir. Değişkenlere yazı yada sayı atanabilir, dizi oluşturulabilir. DEGISKEN="Merhaba Dünya!" SAYAC=0 11

12 Öntanımlı Değişkenler Bash de tanımlı bir çok değişken mevcuttur. Bu değişkenleri programımızda kullanabiliriz. Şu an tanımlı değişkenleri set komutu ile görebiliriz. Başlatacağımız bir programın hangi değişkenlerle başlayacağını ise, env komutu ile görebiliriz. 12

13 Öntanımlı Değişkenler Bash de tanımlı değişkenlere örnekler: USER kullanıcı adı HOSTNAME bilgisayarın adı PWD şu anda bulunulan dizin HOME kullanıcının ev dizini RANDOM her seferinde rastgele bir sayı verir. LANG programın çalışacağı dil bilgisi. IFS alanları ayırmak için kullanılan karakter listesi. LINENO betiğin hangi satırı çalışıyor. PPID betiği çağıran programın process id değeri. $$ betiğin process id değeri. 13

14 Örnek #!/bin/bash echo "Merhaba $USER," echo "Şu anda $HOSTNAME bilgisayarındasın" echo "ve $PWD dizinindesin." echo "Burada merhaba-$user isimli bir dizin açacağım:" mkdir "merhaba-$user" ls -alh "merhaba-$user" 14

15 Değişken Tanımlama #!/bin/bash echo "Merhaba $USER," echo "Şu anda $HOSTNAME bilgisayarındasın" echo "ve $PWD dizinindesin." DIZIN="merhaba-$USER" echo "Burada $DIZIN isimli bir dizin açacağım:" mkdir "$DIZIN" ls -alh "$DIZIN" 15

16 Değişken Tanımlama Değişken adı, = işareti ve Değişken değeri arasında BOŞLUK OLMAMALI! # Doğrusu: DIZIN="merhaba-$USER" #Hatalı: DIZIN ="merhaba-$user" DIZIN= "merhaba-$user" DIZIN = "merhaba-$user" 16

17 Betik Parametreleri $ ilkbetik.sh gel zaman git zaman -h -l $0 $1 $2 $3 $4 $5 $6 $# parametre sayısı, yukarıdaki örnekte 6. $* tüm parametreler birlikte tek metin "gel zaman git zaman -h -l" $@ tüm parametreler ama ayrı ayrı metinler şeklinde "gel" "zaman" "git" "zaman" "-h" "-l" $$ Betiğin işlem numarası (process id) 17

18 Örnek #!/bin/bash echo "Merhaba $USER," echo "Şu anda $HOSTNAME bilgisayarındasın" echo "ve $PWD dizinindesin." echo "Burada $1 isimli bir dizin açacağım:" mkdir "$1" ls -alh "$1" 18

19 Özel Karekterler ve İfadeler

20 Metin Gruplama Karakterleri " " İki tırnak arasındaki ifade birlikte tek bir ifade olur. Özel karakterler çalıştırılır. mkdir "cem ahmet mercan" Tek bir dizin açar. mkdir cem ahmet mercan Üç ayrı dizin açar. echo "$USER" kullanıcı adı, $USER değil ' ' İki tırnak arasındaki ifade birlikte tek bir ifade olur. Özel karakterler ÇALIŞTIRILMAZ. echo '$USER' $USER, kullanıcı adı değil 20

21 Dosya / Dizin için Özel Karakterler * Her hangi bir şey, hiç bir şey dahil *.gif sonu.gif olan herşey. A* başı A olan herşey. Sadece A da kabul. *Ahmet* Ahmet geçen herşey, Sadece Ahmet de olur.? her hangi bir karakter????.txt 4 karakter sonra.txt {,, } bu metinlerin her biri, ayrı ayrı cp dosya{001,005,-listesi} arsiv/ cp dosya001 dosya005 dosya-listesi arsiv/ 21

22 Dosya / Dizin için Özel Karakterler [ ] Bu karakterlerden harhangi biri, ls [klm]* - Karakter aralığı belirtir. k, l veya m ile başlayan herşey rm dosya00[0-9].txt rm dosya000 dosya001 dosya dosya008 dosya009 ls [A-Da-d]* A,B,C,D,a,b,c,d harflerinden biri ile başlayan. [[:digit:]] rakamlardan herhangi biri [[:upper:]] rm [[:digit:]]*.txt rakamla başlayan txt dosyalarını sil. büyük harflerden herhangi biri alnum, alpha, ascii, blank, cntrl, digit, graph, lower, print, punct, space, upper, word, xdigit 22

23 Özel Karakterler \ Özel Karakterleri özel anlamı olmadan kullanmak için \? Gerçek soru işareti? anlamında \\ Gerçekten \ yazdırmak için \BOŞLUK IFS değişkeninden kaçarak boşluk yazmak için \ Görünmez yada klavye dışı karakterleri yazmak için \t TAB karakteri \n ENTER karakteri, new line \e ESC karakteri \0?? ASCII karşılığını vererek yazdırmak için, \033 ESC 23

24 Yazdırma echo Verilen ifadeyi biçimlendirmeden yazdırır. -n yazdıktan sonra yeni satıra geçmez. -e \ ile özel karakterleri de yazmayı açar. echo -e "${SIRANO}\t${ISIM}\t${SOYAD}" echo -e "\033[1mBu yazı bold yazılacak\033[0m" printf C deki printf fonksiyonunun aynısı, formatlı çıktı verir. %d, %f, %s tüm veri tipleri var, - sola yaslar, rakamla genişlik verilir, söylemedikce ENTER basmaz. printf "%4d \t %-12s \t %-12s \n ${SIRANO} ${ISIM} ${SOYAD} 24

25 Komut Gruplama ; Aynı satıra birden fazla komut yazmak için cd ; ls önce cd komutu sonra ls çalıştırılır. ( ) Bir grup komutu birlikte, yeni bir bash de çalıştırır. ( ls ; echo $DENEME; mkdir $DENEME ) && AND (ve) işlemi, Önceki komut doğru sonlandı ise sonrakini çalıştırır. mkdir $DIZIN && cd $DIZIN OR (yada) işlemi, Önceki komut hatalı sonlandı ise sonrakini çalıştırır. mkdir $DIZIN echo "Dizin Açılamadı!" 25

26 Komut Çıktısını Kullanmak ` ` Eğik tırnaklar arasındaki komutu çalıştırılıp, çıktısı ifadenin bulunduğu yere konur. DOSYALAR=`ls /usr/bin` rm `cat dosya-listesi.txt` $( ) Yukarıdaki Eğik tırnaklar ile aynı şey: DOSYALAR=$(ls /usr/bin) Bir komutun çıktısını başka bir komuta gönderir. ls grep ali ls komutunun çıktısında ali geçenler. rm `ls grep ali` adında ali geçen dosyaları siler. 26

27 Döngüler

28 for Döngüsü for i in ahmet mehmet mustafa do echo "Şimdi $i isimli dizin oluşturuluyor." mkdir $i done Şimdi ahmet isimli dizin oluşturuluyor. Şimdi mehmet isimli dizin oluşturuluyor. Şimdi mustafa isimli dizin oluşturuluyor. 28

29 for Döngüsü for isim in *.mp3 do YENIAD="Sezen-Aksu-${isim}" mv "$i" "$YENIAD" done gülümse.mp3 Sezen-Aksu-gülümse.mp3 yağmur.mp3 Sezen-Aksu-yağmur.mp3 29

30 for Döngüsü for (( BAŞLANGIÇ; TEST; ARTIŞ )) do KOMUTLAR done for (( i=0; i<5 ; i++ )) do echo "$i. satir yaziliyor." done 30

31 while / until Döngüleri while TEST do KOMUTLAR done until TEST do KOMUTLAR done 31

32 while Döngüsü while read DOSYA do cp $DOSYA /yedek-diski/ done < dosyalistesi.txt Deneme.c cp Deneme.c /yedek-diski/ Hesaplamalar.zip cp Hesaplamalar.zip /yedek-diski/ calismalar.tgz cp calismalar.tgz /yedek-diski/ 32

33 While Döngüsü cat liste.txt while read a b c d do # Her satırdaki 3. kelimeyi yazacak echo "$c" done Satırdaki kelimeler sırasıyla değişkenlere dağıtılır. Kalanların hepsi son değişkene konur. read komutu girilen verileri değişkenlere aktarır. read -p "Lütfen bir sayı giriniz" SAYI 33

34 While Döngüsü SIMDI=`date '+%s'` while read Proje Tarih do PROJ_TARIH=`date -d "${Tarih}" '+%s'` if [ $SIMDI -gt $PROJ_TARIH ] ; then echo "$Proje süresi dolmuş!" fi done << PROJE_LISTESI hesaplama 02/06/2016 yedekleme 28/12/2018 PROJE_LISTESI 34

35 Geri Dönüş Değeri Her komut bir değer geri döndürür. Sorunsuz çalıştı ise 0 döndürür. 0 bu sebeble TRUE. Her hangi bir başka durumda, 0 dışında bir değer FALSE. mkdir $DIZIN && echo "Dizin Açıldı" mkdir $DIZIN echo "Dizin Açılamadı" $? değişkeni geri dönüş değerini tutar: mkdir $DIZIN echo $? 35

36 if Komutu

37 if Komutu if [ İFADE ] then KOMUTLAR else KOMUTLAR fi if [ $SAYI -gt 12 ] then echo "12 den Büyük" else echo "Büyük Değil" fi Man Sayfası için: man test [ ] Parantezlerin iki tarafında da boşluk şart! 37

38 Tamsayı Testleri A -eq B Eşitse, Equal A -ne B Eşit Değilse, Not equal A -gt B Büyükse, Greater than A -ge B Büyük veya eşitse, Greater or equal A -lt B Küçükse, Less than A -le B Küçük veya eşitse, Less or equal S=1.1 if [ $S -gt 2 ] ; then echo "BUYUK"; fi -bash: [: 1.1: integer expression expected 38

39 Metin Testleri -z A Metnin uzunluğu 0 ise, Zero length -n A Metnin uzunluğu 0 değilse, Not zero length A Metnin uzunluğu 0 değilse, Not zero length A == B İki metin aynı ise, A = B İki metin aynı ise, = iki yanı da boşluk olmalı! A!= B iki metin farklı ise, S="Ahmet Nerede?" if [ "$S"!= "" ] ; then echo "Yazı var!"; fi 39

40 Dosya / Dizin Testleri -e İSİM Bu dosya mevcutsa, -f İSİM Bu dosya mevcut ve normal dosya ise, -d İSİM Bu mevcut bir dizin ise, -r İSİM Bu dosya mevcut ve okuma hakkı varsa, -w İSİM Bu dosya mevcut ve yazma hakkı varsa, -x İSİM Bu dosya mevcut ve çalıştırma hakkı varsa, S="/RS/users/mercan" if [! -d "$S" ] ; then echo "Böyle bir dizin yok!"; fi 40

41 if Örneği if [ "$MA" == "kara" ] && [ "$USER"!= "root" ] then... if [[ "$MA" == "kara" && "$USER"!= "root" ]] then... if [[ "$MA" == "ege" "$MA" == "kara" ]] && [ "$USER"!= "root" ] then 41

42 case Komutu case $ISIM in "cem" "ahmet" ) echo "Ahmet gelmiş";; "mercan" ) echo "Ahmet Soyadını yazmış" echo "Bir dahakine adını yaz!";; esac *) echo "Kimsin sen, tanımıyorum seni $ISIM";; 42

43 Komut Çıktısı Yönlendirme

44 Komut Çıktısı Yönlendirme > Komutun normal çıktısını bir dosyaya gönderir. ls > dosya-listesi.txt #ls çıktısını dosyaya kaydeder. >> Komutun normal çıktısını bir dosyaya ekler. ls >> dosya-listesi.txt #ls çıktısını dosyaya ekler. < Komuta girdi olarak bir dosyanın içindekileri verir. read ad < liste.txt #liste.txt deki yazıları komuta verir. 44

45 Komut Çıktısı Yönlendirme 2> Komutun Hata çıktısını bir dosyaya gönderir. mkdir $DIZIN 2>/dev/null 2>&1 hata çıktısını normal çıktı ile birleştirir. ls >dosya-listesi.txt 2>&1 &> hem hata hem de normal çıktıyı dosyaya gönderir. ls &>dosya-listesi.txt 45

46 Gerekli Komutlar

47 tr Komutu tr Karakterleri başka bir karakterlere değiştirir. -s ile tekrar eden karakterleri siler. # : işaretlerini TAB a çevir cat /etc/passwd tr ":" "\t" # BOŞLUK, TAB ve ENTER tekrarlarını temizle cat index.html tr -s " \t\n" 47

48 seq Komutu seq Verilen aralık ve adımla sayı dizisini altalta yazar. -w ile küçük sayıları 0 ile sabit genişlikte yazar. seq -w seq

49 sort Komutu sort Verilen satırları sıraya dizer. -n ile sayısal sıra, yoksa sözlük sırası -r reverse, ters sırala -k kaçıncı sütuna göre, normali 1. sütun # Ev dizinindeki dosyaları büyükten küçüğe sırala du -m ~/ sort -n -r 49

50 head ve tail komutları head verilen dosyanın başından satırları gösterir -n ile satır sayısı verilir. head -n 3 /etc/passwd # en büyük 10 dosyayı listeler du -m ~/ sort -n -r head -n 10 tail verilen dosyanın sonundan satırları gösterir -n ile satır sayısı verilir. tail -n 3 /etc/passwd 50

51 grep Komutu grep Satırlardan verilen ifadeye uyanları listeler. -n ile bulunan satırların numaralarını gösterir -r ile dizindeki tüm dosyalarda çalışır. --color ifadenin geçtiği yerleri renkli yazar -e normal regex ifadesi vermek için -E extended regex vermek için -v verilen ifadeye uymayanları listeletmek için # /etc deki dosyalarda ara grep -nr --color /etc 51

52 awk Komutu awk Satırlardan verilen ifadeye uyanları işler -F ile sütun ayıracı verilir. Çok gelişmiş bir programlama dilidir. # passwd dosyasından kullanıcı ve kabuk bilgisi awk -F: '{print $1, $7}' /etc/passwd root daemon apache /bin/sh /usr/bin/false /bin/bash 52

53 sed Komutu sed Satırlardan verilen ifadeye uyanları işler -i ile dosyanın kendisini değiştirir. -e normal regex ifadesi vermek için -E extended regex vermek için # asswd dosyasındaki : işaretlerini TAB yapar sed -e 's/:/\t/g' /etc/passwd 53

54 Gerçek Bir Örnek for dizinno in `seq -w 01 25` do echo "Simulation${dizinNo} dizini isleniyor:" cd Simulation${dizinNo}/ for dosya in Sim*.csv do sed -i 's/ /, /g' $dosya done cd.. done 54

55 Değişken İşleme

56 Değişkenlerle Metin İşlemleri METIN="ABCDEF_ABCDEFz" echo "${METIN}" ABCDEF_ABCDEFz echo "${#METIN}" 14 echo "${METIN:2}" CDEF_ABCDEFz echo "${METIN:2:6}" CDEF_A echo "${METIN:(-4)}" DEfz echo "${METIN:(-4):2}" DE echo "${METIN:-Bu degisken bos}" 56

57 Değişkenlerle Metin İşlemleri METIN="ABCDEF_ABCDEFz" echo "${METIN}" ABCDEF_ABCDEFz echo "${METIN//CDE}" ABF_ABFz echo "${METIN//CDE/xy}" AbxyF_AbxyFz echo "${METIN/#CDE/www}" ABwwwF_ABCDEFz echo "${METIN/%CDE/www}" ABCDEF_AbwwwFz echo "${METIN#A*C}" DEF_ABCDEFz echo "${METIN##A*C}" DEFz echo "${METIN%C*Fz}" ABCDEF_AB echo "${METIN%%C*Fz}" AB 57

58 Sayısal İşlemler SAYI=12 let TOPLAM=SAYI+5 $((TOPLAM=SAYI+5)) # Tamsayı olmalı # $ işareti OLMAMALI # Aynı işlem $((SAYI++)) $((SAYI--)) $((TOPLAM=SAYI-3)) $((TOPLAM=SAYI%7)) # 1 artırır # 1 eksiltir # dört işlem # mod, kalan TAMSAYI=${SAYI//.*} # tamsayıya çevirme 58

59 Fonksiyon Tanımlama

60 Fonksiyon Tanımlama function boldecho( ) { echo -e "\033[1m" "$*" "\033[0m" } boldecho "Bu metin bold yazılacak" 60

61 Fonksiyon Tanımlama Daha karışık bir örnek olarak free komutundan % cinsinden boş bellek miktarını veren bir fonksiyon yazalım: free -g Yani (100*free)/total gerekli total used free shared buffers cached Mem: /+ buffers/cache: 9 5 Swap:

62 Fonksiyon Tanımlama free -g grep 'Mem:' Mem: free -g grep 'Mem:' awk '{print $2}' 15 free -g grep 'Mem:' awk '{print $4}' 2 TOPLAM=`free -g grep 'Mem:' awk '{print $2}'` BOS=`free -g grep 'Mem:' awk '{print $4}'` 62

63 Örnek function bosyuzde() { TOPLAM=`free -g grep 'Mem:' awk '{print $2}'` BOS=`free -g grep 'Mem:' awk '{print $4}'` $((SONUC=(100*BOS)/TOPLAM)) echo $SONUC } YUZDE=`bosYuzde` echo "Diskin %${YUZDE} 'u boştur." 63

64 Hata Ayıklama

65 Hata Ayıklama #!/bin/bash -v Komutları çalıştırmadan önceki halini yazar. Aldığımız hatanın hangi satırda oluştuğu görülür. #!/bin/bash -x Komutları çalıştırırken, işledikten sonra yazar. Alt process lerin komutlarını da yazar. Çok miktarda çıktı oluşturur. Önce -v denenmeli. 65

66 Son, Teşekkürler.

Komut Penceresi ile Çalışmaya Başlamak

Komut Penceresi ile Çalışmaya Başlamak Komut Penceresi ile Çalışmaya Başlamak Gökhan SELAMET Terminal Penceresi / CLI Nasıl Açılır Standart Olarak Bilgisayar Adı Bulunduğu Dizin Kullanıcı Yetki Klasör Sistemi Terminalde çalışırken üç önemli

Detaylı

Regular Expressions Version 0.1

Regular Expressions Version 0.1 Regular Expressions Version 0.1 Hüseyin Kaya hkaya@be.itu.edu.tr 2001 Özet Bu belge Linux and Unix Shell Programming adlı kitaptan faydalalınarak yazılmıştır. Kitabın yazarı David Tansley. İngilizce bilenler

Detaylı

Regular Expressions ve grep, awk, sed ile Kullanımı

Regular Expressions ve grep, awk, sed ile Kullanımı Regular Expressions ve Koray OKSAY koray.oksay@linux.org.tr 29 Mart 2014 1 Regular Expressions ve http://en.wikipedia.org/wiki/regular_expression http://en.wikipedia.org/wiki/deterministic_finite_automaton

Detaylı

Linux altında komut satırında...

Linux altında komut satırında... -Kabuk (Shell) Unix ve benzeri işletim sistemlerinde kullanıcının komut yazmasını sağlayan, bu komutları yorumlayarak gerekli işlemleri yapan programlara kabuk (shell) adı verilir. Linux da bir kullanıcı

Detaylı

Linux'ta Kabuk ve Kabuk Programlama

Linux'ta Kabuk ve Kabuk Programlama Linux'ta Kabuk ve Kabuk Programlama Kabuk Nedir? Kabuk, kullanıcı ile bilgisayar sistemi arasındaki bir yazılım katmanıdır. Kabuk, kullanıcının hareketlerini yorumlayıp, işletim sistemini ve uygulamaları

Detaylı

Temel Linux Komutları

Temel Linux Komutları Yrd.Doç.Dr. Murat Olcay ÖZCAN Temel Linux Komutları Linux Komut Yapısı Örnek: > ls l /home/coldfish > cd /home/coldfish Yardım Komutları Linux ta komutlar hakkında yardım

Detaylı

KABUK PROGRAMLAMA (shell programming- scripting)

KABUK PROGRAMLAMA (shell programming- scripting) KABUK PROGRAMLAMA (shell programming- scripting) 2 Kabuk Programlamaya Giriş Her kabuğun kendine özgü programlama dili yapısı vardır. Bash kabuğu ise güçlü programlama özellikleriyle karmaşık programların

Detaylı

Linux Dosya Yapısı. Eren BAŞTÜRK.

Linux Dosya Yapısı. Eren BAŞTÜRK. Linux Dosya Yapısı Eren BAŞTÜRK basturkeren@gmail.com Giriş Kernel Derleme Ramdisk oluşturma /dev/shm Aygıtı Kabuk Programlama Dosya Türlerinin Sisteme Yüklenmesi Linux Dosya Yapısı Giriş Kernel Derleme

Detaylı

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos Yardım Komutları Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos Yardım Komutları man komut Parametre olarak aldığı komut hakkında bilgiyi ekranda

Detaylı

Temel Linux Eğitimi. İçindekiler

Temel Linux Eğitimi. İçindekiler Temel Linux Eğitimi İçindekiler 1. Linux Topluluğu ve Açık Kaynak Sistemlerde Kariyer İmkanları...3 1.1 Linux tarihsel gelişim ve popüler İşletim Sistemleri...3...3...3...3 1.2 Ana Açık Kaynak Uygulamalar...3...3...3...3

Detaylı

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 Ekrana Metin Yazdırmak Ekranda metin yazdırmak istendiğinde print komutu kullanılır. Kullanımı aşağıda verilmiştir. Parantez içinde

Detaylı

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.) Yardım Komutları man komut Parametre olarak aldığı komut hakkında bilgiyi ekranda gösterir. man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.) Komut çalıştırıldığında uzun

Detaylı

Kabuk Programlama (Bash)

Kabuk Programlama (Bash) Kabuk Programlama (Bash) Erkan Esmer Ocak, 2013 İçindekiler 1 Giriş.................................................... 2 2 Kabuk(Shell)............................................... 3 3 Çekirdek(Kernel).............................................

Detaylı

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ BİLGİ İŞLEM MSGSU FİZİK BÖLÜMÜ DERS 3 Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ TEMEL LINUX KOMUTLARI Bütün işletim sistemlerinde grafik arayüz yardımı herhangi bir komut yazmadan işlemler gerçekleştirilebilir

Detaylı

yazılabilir. Bundan sonra programın ismi yazılıp enter tuşuna basıldığı zaman bir program Linux komutuymuş gibi çalışacaktır.

yazılabilir. Bundan sonra programın ismi yazılıp enter tuşuna basıldığı zaman bir program Linux komutuymuş gibi çalışacaktır. DERS 8: 7. Kabuk Programlamaya Giriş Her kabuğun kendine özgü programlama dili yapısı vardır. Bash kabuğu ise güçlü programlama özellikleriyle karmaşık programların rahatça yazılmasına izin verir. Mantıksal

Detaylı

PYTHON PROGRAMLAMA DİLİ

PYTHON PROGRAMLAMA DİLİ PYTHON PROGRAMLAMA DİLİ Ege Bilmuh GNU/Linux ve Özgür Yazılım Çalışma Grubu http://tinyurl.com/ozgurbilmuh Enes Ateş enes@enesates.com 26.04.2012 Nedir bu Python? Adını Monty Python's Flying Circus adlı

Detaylı

Komutlar (Devam) ls -a > deneme (ls -a komutunun çıktısı deneme isimli. ls -a >> deneme (ls -a komutunun çıktısı deneme

Komutlar (Devam) ls -a > deneme (ls -a komutunun çıktısı deneme isimli. ls -a >> deneme (ls -a komutunun çıktısı deneme Komutlar (Devam) Komut satırında >, >> simgeleri özel anlam taşır. ls -a > deneme (ls -a komutunun çıktısı deneme isimli dosyaya yönlendirilir. Eğer dosya yoksa yaratılır, varsa da üzerine yazılır.) ls

Detaylı

$ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8

$ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8 Joker karakterler Günlük Linux kullanımında çok defa bir operasyonu tek seferde birden fazla nesne için çalıştırmak isteyebileceğiniz (rm gibi) durumlarla karşılaşabilirsiniz. Böyle durumlarda, aşağıdaki

Detaylı

Aşağıda listelenen temel linux komutları bilgisayarınızın komut satırında çalıtırılacaktır.

Aşağıda listelenen temel linux komutları bilgisayarınızın komut satırında çalıtırılacaktır. Genel amaçlı komutları Aşağıda listelenen temel linux komutları bilgisayarınızın komut satırında çalıtırılacaktır. help Kabuk komutlarının listesini gösterir. Bu komutların herbiri için help komut_ismi

Detaylı

Kullanım şekli: cal <ay> <yıl> Bu komut ile takvim görüntülenebilir.

Kullanım şekli: cal <ay> <yıl> Bu komut ile takvim görüntülenebilir. 2 Sistem Komutları Kullanım şekli: cal Bu komut ile takvim görüntülenebilir. Ay ve yıl bilgisi belirtilmediğinde, sadece içinde bulunulan ayın takvimi görüntülenecektir. Sadece yıl bilgisi verilirse,

Detaylı

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach() (LOOPS) while(), do-while(), for(), foreach() Döngüler (loops) while do-while for foreach while ( koşul ) işlemler; do işlemler; while (koşul ); for (başlangıç ; koşul ; arttırma) işlemler; foreach ( tip

Detaylı

Temel Li nux Eği t i mi 4. 5. 6. Böl üm

Temel Li nux Eği t i mi 4. 5. 6. Böl üm Temel Li nux Eği t i mi 4. 5. 6. Böl üm C. Ahmet MERCAN İ TÜ Bi l i şi m Enst i t üsü 11 Hazi r an 2012 Bölüm 4 Kullanıcılar, Haklar 3 Kullanıcılar Linux'ta her kullanıcının bazı temel özellikleri vardır:

Detaylı

Pardus ta Komutlarla Çalışmak

Pardus ta Komutlarla Çalışmak KONSOL KOMUTLARI Pardus ta Komutlarla Çalışmak Pardus üzerinde şu ana kadar tüm işlemlerimizi grafik ara yüz ile fare ve klavyeyi kullanarak gerçekleştirdik. Şimdiye kadar yaptığımız tüm işlemler ve daha

Detaylı

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO while(), do-while(), for() Döngü (loop) : Bir koşul sağlandığı (true olduğu) sürece bir veya birden çok komutun tekrarlanması işlemidir. Java Döngüler (loops) While() do-while() for ( ) while ( koşul )

Detaylı

LABORATUVAR ÇALIŞMASI 1 - Python a Giriş

LABORATUVAR ÇALIŞMASI 1 - Python a Giriş LABORATUVAR ÇALIŞMASI 1 - Python a Giriş Bu Çalışmanın Amacı Bu çalışmadaki amacımız, kullandığımız sistem ve kullanım hedefimiz için en uygun olan Python sürümünü bilgisayarımıza yükleyerek bilgisayarımızı

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI

OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI 23.01.2016 1. (6 puan) İnternetten, kod.txt isimli bir dosyayı Linux kurulu bir

Detaylı

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlama Ders 1 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlamaya C ile Programlamaya Yazılım: Bilgisayarın işlemler yapması ve karar vermesi

Detaylı

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN Basit C Programları: Bir Metni Yazdırmak #include /* program çalışmaya main fonksiyonundan başlar*/ int main() { printf( "C diline hoşgeldiniz!\n"

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

Detaylı

Bir üst dizinde yer alan prog1 programını çalıştırmak için aşağıdaki komutlardan hangisini çalıştırmak gerekir?

Bir üst dizinde yer alan prog1 programını çalıştırmak için aşağıdaki komutlardan hangisini çalıştırmak gerekir? LİNUX AĞ YÖNETİMİ VİZE HAZIRLIK SORULARI lsmod aşağıdaki hangi bilgiyi verir? A) Bütün yüklü modüller B) Bütün güncellenebilir modüller C) En son kullanılan modüller D) Bütün kaldırılmış modüller E) Bütün

Detaylı

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

Temel Linux Eğitimi 1., 2. ve 3. Bölümler Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı - 11.06.2012 İçerik 1. Linux, Kavramlar ve Dizin Yapısı 2. Temel Linux Komutları 3. Sunucuya Uzaktan Bağlanma 1. Linux, Kavramlar ve Dizin Yapısı Linux Linux,

Detaylı

C Konsol ve Komut Satırı

C Konsol ve Komut Satırı C Konsol ve Komut Satırı Öğr. Gör. M. Ozan AKI Rev 1.0 C:\> Konsol ekranı, işletim sistemi ve dosya yönetiminin metin tabanlı yönetilebilmesini sağlayan arabirimdir. Windows işletim sistemi ortaya çıkmadan

Detaylı

BİL-142 Bilgisayar Programlama II

BİL-142 Bilgisayar Programlama II BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Kontrol Yapıları if Seçme Deyimi if... else Seçme Deyimi while Tekrar

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9 BTP 207 İNTERNET PROGRAMCILIĞI I Ders 9 Dizi Değişkenler (Array) 2 Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1, eleman2,, elemann)

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/ MTK467 Nesneye Yönelik Programlama Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/ while döngüsü while(koşul){ } döngü ifadeleri Koşul boolean değerli olmalıdır. Koşulun değeri true

Detaylı

qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr

qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr Üniversitelerde kullanılan mail sisteminin iki belirgin özelliği vardır. 1. Çok sayıda kullanıcı

Detaylı

SIMAN KULLANIM KILAVUZU

SIMAN KULLANIM KILAVUZU SIMAN KULLANIM KILAVUZU Önder Öndemir SIMAN Simülasyon programı Model Çatı ve Deneysel Çatı olmak üzere iki kısımdan oluşur. Model çatı genel itibariyle modullerin ve işlem bloklarının yazıldığı kısımdır.

Detaylı

PBS Betiği Hazırlama ve PBS Komutları. Feyza Eryol feyza@ulakbim.gov.tr

PBS Betiği Hazırlama ve PBS Komutları. Feyza Eryol feyza@ulakbim.gov.tr PBS Betiği Hazırlama ve PBS Komutları Feyza Eryol feyza@ulakbim.gov.tr İçerik TR-Grid Altyapısı PBS Betik Dili PBS Seçenekleri PBS Betiğinin Hazırlanması PBS Komutları Uygulamalar TR-Grid Altyapısı - I

Detaylı

Linux Dosya ve Dizin Yapısı

Linux Dosya ve Dizin Yapısı Linux Dosya ve Dizin Yapısı Dosya ve Dizin Sistemi Linux te kök dizin (/) sembolü ile ifade edilir. Windowsta kök dizin C: ise Linux ta / sembolüdür. 1 Kök dizini (/) İşletim Sisteminin çalışabilmesi için

Detaylı

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

if (ad == Sabri) Console.WriteLine(Merhaba Sabri. Ne zamandır gözükmüyodun...); Koşul İfadeleri ve Akış Kontrolü Koşul ifadeleri ve akış kontrolleri programlama dillerinde her zaman en önemli yeri tutmaktadır. Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir

Detaylı

PYTHON PROGRAMLAMA DİLİ

PYTHON PROGRAMLAMA DİLİ PYTHON PROGRAMLAMA DİLİ Ege Bilmuh GNU/Linux ve Özgür Yazılım Çalışma Grubu http://tinyurl.com/ozgurbilmuh Enes Ateş enes@enesates.com 03.05.2012 Önceki Hafta Python Nedir, Kimler Kullanır? Python'ı Çalıştırmak

Detaylı

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

Detaylı

Shell(Bash,sh, zsh,) Programming- Kabuk Programlama

Shell(Bash,sh, zsh,) Programming- Kabuk Programlama dostaki bat dosyasi gibi çalışabilir dosyalar oluşturma Linux altında hızlı ve pratik programlama yapmanın en kısa yolu shell(kabuk) programlamadır diyebiliriz. İşletim sisteminin doğal komutlarını çalıştırma

Detaylı

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü BM-209 Nesne Yönelimli Programlama Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü Java Programlama Dili Java bayt kodları Java Sanal Makineleri üzerinde

Detaylı

program uc_hata implicit none integer : x(5),i

program uc_hata implicit none integer : x(5),i OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I FİNAL SINAVI 11.01.2016 1. (6 puan) İnternetten, kod.txt isimli bir dosyayı Linux kurulu bir bilgisayardaki

Detaylı

Karakter Değişkenlere İlişkin Komutlar

Karakter Değişkenlere İlişkin Komutlar Karakter Değişkenlere İlişkin Komutlar ASCII Kodlama Sistemi Bilgisayar sayılar üzerine kurulmuş makinalar olduklarından onların düşünmeleri ve hatırlamaları sayısal değerlerle olmaktadır. Bundan dolayı

Detaylı

Düzenli İfadeler & Kullanım Alanları

Düzenli İfadeler & Kullanım Alanları & Kullanım Alanları sezai.yilmaz@pro-g.com.tr 1 İçerik (ing. regular expressions) Şablonlar (ing. patterns) Düzenli ifade şablonları (ing. regular expression patterns) Düzenli ifadelerde kullanılan karakterler

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;

Detaylı

Python Programlama Dili

Python Programlama Dili Python Programlama Dili 3. Python da Döngüler Bu bölümde iki tane döngüden bahsedeceğiz: while ve for döngüleri. Ayrıca bu bölümde döngüler dışında break ve continue deyimleri ile range() ve len() fonksiyonlarına

Detaylı

$ echo $PATH /sbin:/bin:/usr/sbin:/usr/bin:/usr/x11r6/bin: /usr/local/sbin:/usr/local/bin:/usr/games:.

$ echo $PATH /sbin:/bin:/usr/sbin:/usr/bin:/usr/x11r6/bin: /usr/local/sbin:/usr/local/bin:/usr/games:. Dosyaları bulmak Linux sistemleri içlerinde yüzlerce dosya barındırmaktadır. Her ne kadar bu dosyaların yerlerini kaybetmeyecek kadar usta olsanız bile, büyük bir ihtimalle bir tanesini bulmak için ara

Detaylı

Düzenli İfadeler & Kullanım Alanları

Düzenli İfadeler & Kullanım Alanları Düzenli İfadeler & Kullanım Alanları sezai.yilmaz@pro-g.com.tr 1 Düzenli İfadeler İçerik Düzenli İfadeler (ing. regular expressions) Şablonlar (ing. patterns) Düzenli ifade şablonları (ing. regular expression

Detaylı

Internet Programming II

Internet Programming II Internet Programming II Elbistan Meslek Yüksek Okulu 2016 2017 Bahar Yarıyılı Öğr.Gör. Murat KEÇECĠOĞLU 1 Fonksiyonlar Değişken Kontrol Fonksiyonları isset() Fonksiyonu Parametre olarak aldığı değişken

Detaylı

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011 PHP I E. Fatih Yetkin 26 Eylül 2011 Outline Temel Tanımlar HTML e Giriş PHP ye Giriş MySQL ve PHP Temel Tanımlar Web Sunucu Nedir? Teknik detaylar bir kenara bırakılacak olursa, hazırlanan web sayfasını

Detaylı

Linux konsol uygulamaları ve BASH programlama

Linux konsol uygulamaları ve BASH programlama Linux konsol uygulamaları ve BASH programlama Aydın ÜSTÜN Selçuk Üniversitesi e-posta: austun@selcuk.edu.tr 04.07.2010 İçerik Giriş 1 Giriş Temel kavramlar SSH araçları 2 3 Editörler Bilim ve mühendislik

Detaylı

Linux Komutları. Temel Linux Komutları - Sed ve Awk, Kabuk Programlama - Bash / Csh, Süreç Otomasyonu - crontab vb.

Linux Komutları. Temel Linux Komutları - Sed ve Awk, Kabuk Programlama - Bash / Csh, Süreç Otomasyonu - crontab vb. Linux Komutları Temel Linux Komutları - Sed ve Awk, Kabuk Programlama - Bash / Csh, Süreç Otomasyonu - crontab vb. ls komutu ls [dizin] : Dizin içeriğini gösterir. Dizin verilmezse içinde bulunulan dizini

Detaylı

qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr

qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr qmail ile üniversite mail sistemi yönetimi Devrim Sipahi Dokuz Eylül Üniversitesi devrim.sipahi@deu.edu.tr Üniversitelerde kullanılan mail sisteminin iki belirgin özelliği vardır. 1. Çok sayıda kullanıcı

Detaylı

BİLİŞİM TEKNOLOJİLERİ

BİLİŞİM TEKNOLOJİLERİ T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ AÇIK KAYNAK İŞLETİM SİSTEMİ YÖNETİMİ Ankara, 2014 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan

Detaylı

Kazanımlar. Linux nedir? Linux dizin yapısı. Linux kabuğu nedir? Temel kabuk komutları. Bash programlama. Dosya işlemleri. Süreç yönetimi.

Kazanımlar. Linux nedir? Linux dizin yapısı. Linux kabuğu nedir? Temel kabuk komutları. Bash programlama. Dosya işlemleri. Süreç yönetimi. Linux 101 Kazanımlar Linux nedir? Linux dizin yapısı Linux kabuğu nedir? Temel kabuk komutları Bash programlama Dosya işlemleri Süreç yönetimi Sıkıştırma Sistem hakkında bilgi edinme Kullanıcı yönetimi

Detaylı

Temel LINUX Komutları

Temel LINUX Komutları Ders 8 LINUX OS (Temel Komutlar) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 Konsole kullanımı için birçok komut bulunmaktadır. Bunlardan bir kısmı betik (script) yazımında kullanılır. Burada gereksinim duyulan en

Detaylı

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr Dosya adları herha gi ir karakteri kulla a ilir. abc??##.a1

Detaylı

İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI

İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI 1) Aşağıdaki seçeneklerin hangisinde PHP kod yazımı doğru olarak verilmiştir? A) B) C).. D) 2) PHP ile hazırlanmış

Detaylı

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido. PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan PHP Nedir? Genel kullanım amaçlı bir betik/programlama dilidir.

Detaylı

Pascal Programlama Dili

Pascal Programlama Dili Pascal Programlama Dili Öğr. Gör. Özgür ZEYDAN Z.K.Ü. Çevre Müh. Bölümü Pascal Programlarının Yapısı Program program_adı; Uses unitler type Özel veri tipleri Const Sabitler Label etiketler var değişken

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr Basit metin işlemleri (tek dizeler üzerinde arama

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

Genel Programlama I. 14.10.2010 Ders 3

Genel Programlama I. 14.10.2010 Ders 3 Genel Programlama I 14.10.2010 Ders 3 1 LİNUX NEDİR? Microsoft Windows a elternatif bir işletim sistemidir. Açık kaynaklıdır. Ücretsizdir. Daha güvenilirdir. Laboratuar ve bilimsel çalışma ortamlarında

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Pardus 2013 te Metin Editörleri

Pardus 2013 te Metin Editörleri METİN EDİTÖRLERİ Pardus 2013 te Metin Editörleri Editör metin düzenleyicisi demektir. Linux işletim sistemlerinde, metin oluşturma ya da düzenleme işlemleri için farklı metin düzenleyici programları vardır.

Detaylı

Temel Linux Bilgileri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı

Temel Linux Bilgileri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı Temel Linux Bilgileri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı Tarih 1 Temel Linux Kullanımı Temel Komut Serisi-1 Linux Dosya Sistemi Linux Komut Serisi-2 Network Ayarları

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

3. DOSYA SİSTEMİ VE ÇALIŞMA MANTIĞI

3. DOSYA SİSTEMİ VE ÇALIŞMA MANTIĞI 3. DOSYA SİSTEMİ VE ÇALIŞMA MANTIĞI 3.1. Dosya Sistemi Dosya sistemi disk üzerindeki dosyaların organize edilmesidir. Bir işletim sisteminin bir disk veya bölümleri üzerindeki dosyalarının izlerini bulmak

Detaylı

1 NEDEN PROGRAMLAMA ÖĞRENMELIYIZ?

1 NEDEN PROGRAMLAMA ÖĞRENMELIYIZ? İÇİNDEKİLER VII İÇİNDEKİLER 1 NEDEN PROGRAMLAMA ÖĞRENMELIYIZ? 1 Neden Python? 3 Python Neden Bütün Hacker ların Favori Programlama Dili? 4 Hangi Editörü Kullanmalıyım? 5 Bu Kitabı Nasıl Kullanmayalıyım?

Detaylı

Print Komutu ile Değişkenleri Yazdırmak

Print Komutu ile Değişkenleri Yazdırmak PYTHON DERS-4 Bu derste eksiklerimizi gidereceğiz. Şimdiye kadar bazı komutları kullandık ancak kullandığımız bu komutların özellikleri hakkında hiçbir şey öğrenmedik. İşte bu derste biraz onlardan bahsedeceğiz.

Detaylı

Burada a değişkeninin türü integer olarak verildi. Peki biz bu ifadeyi tırnak içerisinde yazarsak ne olur?

Burada a değişkeninin türü integer olarak verildi. Peki biz bu ifadeyi tırnak içerisinde yazarsak ne olur? STRİNG (KARAKTER) İŞLEMLERİ Python'da karakter dizilerini ifade etmek için yapmamız gereken tek şey, ifademizi tırnak ("") içinde belirtmektir. Python'da tırnak içerisinde belirtilen her şey karakter dizisi

Detaylı

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş Kurulum için ilk önce Sun Microsystems in sitesinden uygun J2SE sürümünü indirin. Ben J2SE v1. 4. 2_16 Windows Installer paketini kullandım J2SE SDK Kurulumu aşağıdaki gibi başlayacaktır. 1 Kurulum tamamlandıktan

Detaylı

Sınav Dağılım & IMKB Endeks

Sınav Dağılım & IMKB Endeks Sınav Dağılım & IMKB Endeks Ege Üniversitesi Bilgisayar Mühendisliği Veri Yapıları Proje-1 Hüseyin YAŞAR 05-06-7657 Didem KAYALI 05-06-7669 Umut BENZER 05-06-7670 Özlem GÜRSES 05-07-8496 Sürüm: 0.2 Bölüm

Detaylı

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ Java programlama dili, Java SUN bilgisayar şirketi tarafından 1991 yılında geliştiril Program bloklar halinde yazılır ve bloklar { } ile oluşturulur. Komutlar aynı satıra

Detaylı

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir. MATRİS TRANSPOZU: Bir matrisin satırlarını sütun, sütunlarınıda satır yaparak elde edilen matrise transpoz matris denilir. Diğer bir değişle, eğer A matrisi aşağıdaki gibi tanımlandıysa bu matrisin transpoz

Detaylı

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programlamaya Giriş Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programın Yazımında İzleyeceğimiz Adımlar Problemi anla. İhtiyaçları belirle. Problemin

Detaylı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN NESNE TABANLI PROGRAMLAMA Java Değişkenler ve Veri Tipleri Operatörler JAVA Java Java SUN bilgisayar şirketince

Detaylı

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Ders 4: Diziler (Arrays( Arrays) barisgokce.com Ders 4: Diziler (Arrays( Arrays) Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Diziler Aynı tipteki bir veri gurubunun bir değişken içinde saklanmasıdır. Veriler Hafızada

Detaylı

İnternet Programcılığı Dersi 2.Dönem Ders Notu

İnternet Programcılığı Dersi 2.Dönem Ders Notu İnternet Programcılığı Dersi 2.Dönem Ders Notu DEĞİŞKEN TİPLERİ TAM SAYI (İNTEGER) VERİ TİPİ Negatif veya pozitif ondalık kısmı bulunmayan sayılardır. Örnek: $i=65; $x=345; ONDALIK(REAL)VERİ TİPİ Ondalıklı

Detaylı

Akış Kontrol Mekanizmaları

Akış Kontrol Mekanizmaları Akış Kontrol Mekanizmaları 1 Akış Kontrol Mekanizmaları if else switch for döngüsü for döngüsünün çalışma prensibi for döngüsüyle ilgili örnekler for döngüsüyle ilgili kurallar while döngüsü while döngüsünün

Detaylı

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız. ÖDEV (Vize Dönemi) CEVAPLAR 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız. PROGRAM Soru1 PRINT Merhaba Dünya! ; 2. Klavyeden girilen negatif bir sayıyı

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları Konsol Uygulaması Oluşturma Konsol uygulaması oluşturmak için program açıldıktan sonra Create: Project ya da New Project seçeneği tıklanabilir. New Project penceresini açmak için farklı yollar da vardır.

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

AÇIK KAYNAK İŞLETİM SİSTEMLERİ - BÖLÜM 1. Temel komutlar,dosya ve Dizin İşlemleri, Kullanıcı ve Grup İşlemleri

AÇIK KAYNAK İŞLETİM SİSTEMLERİ - BÖLÜM 1. Temel komutlar,dosya ve Dizin İşlemleri, Kullanıcı ve Grup İşlemleri AÇIK KAYNAK İŞLETİM SİSTEMLERİ - BÖLÜM 1 Temel komutlar,dosya ve Dizin İşlemleri, Kullanıcı ve Grup İşlemleri https://www.youtube.com/channel/uc3bcgwoodnxga3i7oqjipta www.ayazagan.com İçindekiler LİNUX

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA Rastgele sayı üretme C#'ta program yazarken (özellikle oyun programlarında) rastgele değerlere ihtiyaç duyabiliriz. Rastgele sayı üretebilmemiz için öncelikle Random sınıfı

Detaylı

R ile Programlamaya Giriş ve Uygulamalar

R ile Programlamaya Giriş ve Uygulamalar R ile Programlamaya Giriş ve Uygulamalar İçerik R ye genel bakış R dili R nedir, ne değildir? Neden R? Arayüz Çalışma alanı Yardım R ile çalışmak Paketler Veri okuma/yazma İşleme Grafik oluşturma Uygulamalar

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr Li u Ko ut Satırı Arayüzü(CLI), yüzlerce komutla çok

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip

Detaylı

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları 1 Anadolu Üniversitesi Endüstri Mühendisliği Bölümü Dosyalama İşlemleri Visual Basic 6.0 Ders Notları Kaynak: İhsan Karagülle, Zeydin Pala, Visual Basic 6.0, Türkmen Kitabevi, 1999, Beyazıt İstanbul, 2

Detaylı