iptables kullanımı

Sunucunuza erişmesini istemediklerinize ip bloğu koymak için kullandığımız veya özellikle erişmek istediklerinizi (dışarıdan kendiniz) beyaz listeye alma gibi işlemleri terminale bağlantıktan sonra iptables aracılığıyla yapıyoruz.

Kısaca;

// bloklanmış IP'leri listelemek için;
iptables -L INPUT -v -n

// bloklanmış IP'yi silmek (bloğu kaldırmak) için;
iptables -D INPUT -s x.x.x.x -j DROP

// IP adreslerini beyaz listeye eklemek (güvenilir kılmak) için;
// INPUT: girişlere, OUTPUT: çıkışlara
iptables -A INPUT -s  x.x.x.x -j ACCEPT
iptables -A OUTPUT -s x.x.x.x -j ACCEPT

C’de çift sayıları birer birer arttırma

#include 
void ciftArttir(int dizi[], int boyut)
{
	int i;
	
	for (i = 0; i < boyut; i++)
	{
		if (dizi[i] % 2 == 0)
		{
			dizi[i]++;
		}
	}
}

int main()
{
	int i,sayi[6] = { 1,2,3,4,5,6 };
	
	ciftArttir(sayi, 6);
	for (i = 0; i < 6; i++)
	{
		printf("%d\n", sayi[i]);
	}
	return 0;
}

ekran çıktısı
1
3
3
5
5
7
olacaktır.

javascript’te select option değeri alma

HTML Kodu

<select name="selectadi" id="selectkutuID" onchange="degergoster()">
	<option value="deger1">Değer 1</option>
	<option value="deger2">Değer 2</option>
	<option value="deger3">Değer 3</option>
</select>

JavaScript Kodu

<script>
	function degergoster() {
		var selectkutu = document.getElementById('selectkutuID');
		var selectkutu_value = selectkutu.options[selectkutu.selectedIndex].value;
		var selectkutu_text = selectkutu.options[selectkutu.selectedIndex].text;
		alert(selectkutu_value+' '+selectkutu_text);
	}
</script>

PHP ile metinsel işlemler

<?php

	$metin = "teknoyar'dan metin işlemleri"; 
	$metin1 = "<b>teknoyar'dan metin işlemleri</b>"; 
	$sayi = 123.456; 
	
	$parcala=explode(" ",$metin); // explode("kesilecek yer",değişken); 
	echo $parcala[0]."<br>"; 
	
	echo substr($metin,6)."<br>"; // ilk 6 karekteri okuma 
	echo substr($metin,0,6)."<br>"; // 0. karekterden 6. karektere kadar oku 
	echo substr($metin,-6)."<br>"; // sondaki 6 karekter 
	echo substr($metin,6,-6)."<br>"; // baştan 6. karakterden itibaren sondaki 6 karekter e kadar
	echo str_replace(" ","_",$metin); // istediğimiz bişeyi istediğimiz bişeyle değiştirir str_replace(bul,değiştir,burda) 
	echo strlen($metin)."<br>"; // metnin uzunluğunu sayar. örn: strlen('araba'); 5 gibi.
	echo strtoupper($metin)."<br>"; // hepsi büyük 
	echo strtolower($metin)."<br>"; // hepsi küçük 
	echo ucfirst($metin)."<br>"; // cümlenin ilk harfi büyük 
	echo ucwords($metin)."<br>"; // her kelimenin ilk harfi büyük 
	echo trim($metin)."<br>"; // metnin başında ve sonundaki boşlukları atar. 
	echo Ltrim($metin)."<br>"; // metnin solundaki boşlukları atar 
	echo Rtrim($metin)."<br>"; // metnin sağındaki boşlukları atar 
	echo chr(65)."<br>"; // ASCII'den karektere 
	echo ord("A")."<br>"; // Karekterden ASCII ye 
	echo number_format($sayi,"2",".",",")."<br>"; // number_format(değişken,ondalık basamağı,"ayraç","ondalık ayraç") TL para birimi için geçerlidir.
	echo addslashes($metin)."<br>"; // metin içerisindeki gizli karekterlerin başına slash (/) koyar 
	echo stripslashes($metin)."<br>"; // metin içerisindeki gizli karekterlerin başındaki slashı kaldırır 
	echo htmlspecialchars($metin1)."<br>"; // metinde geçen html etiketlerini; etiket değilde metin olarak algılamasını sağlar.
	echo strip_tags($metin1,'<b>')."<br>"; // tırnak içinde belirlediğimiz html dışındaki tüm html etiketlerini devre dışı bırakır.
	echo Nl2br($metin); // textare'da satırlara <br> ekler.
?>

 

Üçgenin kenar uzunluklarını isteyip, üçgenin çeşidini bulan program

Öncelikle üçgenin üç kenarınında kenar uzunluğunu teker teker istiyoruz, uzunlukları aldıktan sonra üçgenimizin çeşidini buluyoruz. Üçgenimizin üç kenarının uzunluğu birbirine eşit ise eşitkenar üçgen, iki kenarı eşit ise ikizkenar üçgen, üç kenarının uzunluğu farklı ise çeşitkenar üçgen sonucunu alıyoruz.

#include <stdio.h>
int main()
{
	int kenar1, kenar2, kenar3;
	printf("1. Kenar uzunlugu girin: ");
	scanf("%d", &kenar1);
	printf("2. Kenar uzunlugu girin: ");
	scanf("%d", &kenar2);
	printf("3. Kenar uzunlugu girin: ");
	scanf("%d", &kenar3);
	
	if ((kenar1==kenar2) && (kenar2==kenar3))
	{
		printf("Esitkenar ucgen\n");
	}
	else if ((kenar1 == kenar2) || (kenar1 == kenar3) || (kenar2 == kenar3))
	{
		printf("Ikizkenar ucgen\n");
	}
	else
	{
		printf("Cesitkenar ucgen\n");
	}
	
	return 0;
}

Çıktısı;
Tüm kenar uzunlukları birbirine eşit ise;
1. Kenar uzunlugu girin: 60
2. Kenar uzunlugu girin: 60
3. Kenar uzunlugu girin: 60
Esitkenar ucgen

Herhangi iki kenarın uzunluğu aynı ise;
1. Kenar uzunlugu girin: 55
2. Kenar uzunlugu girin: 55
3. Kenar uzunlugu girin:70
Ikizkenar ucgen

Tüm kenar uzunluğu birbirinden farklı ise;
1. Kenar uzunlugu girin: 55
2. Kenar uzunlugu girin: 65
3. Kenar uzunlugu girin: 60
Cesitkenar ucgen

Kullanıcıya kaç tane sayının toplanacağını sorup, sayıları isteyip toplamını ekrana yazdıran program

#include <stdio.h>
int main()
{
	int sayi, girilen, toplam = 0, i;
	printf("Kac tane toplama islemi yapilacak?: ");
	scanf("%d", &sayi);
	
	for (i = 1; i <= sayi; i++)
	{
		printf("%d. sayiyi girin: ", i);
		scanf("%d", &girilen);
		toplam = toplam + girilen;
	}
	printf("Toplam: %d\n", toplam);
	return 0;
}

Öncelikle kullanıcıya kaç tane sayının toplanacağını soruyoruz, örneğin 5 tane ise, kullanıcıdan 5 kez sayı istiyoruz, 5 kez sayı girdikten sonra alınan 5 sayının toplamını ekrana yazdırıyoruz.

Çıktısı;
Kac tane toplama islemi yapilacak?: 5
1. sayiyi girin: 5
2. sayiyi girin: 10
3. sayiyi girin: 15
4. sayiyi girin: 20
5. sayiyi girin: 25
Toplam: 75

c ile if kullanımı ve iki sayıyı karşılaştırma

#include <stdio.h>
int sayi;

int main()
{
	printf("Sayi girin: ");
	// scanf komutu ile sayı girilip, girilen sayının tutulmasını sağlıyoruz
	scanf("%d", &sayi);
	
	if (sayi > 10)
	{
		printf("Girdiginiz sayi: %d\n", sayi);
		printf("Sayi 10'dan buyuk.\n\n");
	}
	else if(sayi < 10)
	{
		printf("Girdiginiz sayi: %d\n", sayi);
		printf("Sayi 10'dan kucuk.\n\n");
	}
	else
	{
		printf("Girdiginiz sayi: %d\n", sayi);
		printf("Sayi 10'a esit.\n\n");
	}
	return 0;
}

Öncelikle Sayı girin: yazısı ekrana gelecektir, sayınızı girdikten sonra koşula göre sonuç dönecektir.

Girilen Sayı 10’dan Büyük İse Çıktısı;
Sayı girin:
Girdiginiz sayi: 11
Sayi 10’dan buyuk.

Girilen Sayı 10’dan Küçük İse Çıktısı;
Sayi girin:
Girdiginiz sayi: 9
Sayi 10’dan kucuk.

Girilen Sayı 10’a Eşit İse Çıktısı;
Sayi girin:
Girdiginiz sayi: 10
Sayi 10’a esit.

scanf kullanımı

#include <stdio.h> ana kütüphane (giriş çıkış / ekrana yazdırma vs) oluyor.

#include <stdio.h>

int sayi;

int main()
{
	printf("Sayi girin: ");
	// scanf komutu ile sayı girilip, girilen sayının tutulmasını sağlıyoruz
	scanf("%d", &sayi);
	
	// girilen sayıyı ekrana yazdırıyoruz
	printf("Girdiginiz sayi: %d\n", sayi);
	return 0;
}

İlk önce Sayı girin: yazısı gözükür, sayı girdikten sonra ise Girdiginiz sayi: 10 gözükür. 10 temsili sayıdır. Ne girilirse o gözükür.

Çıktısı;
Sayi girin: 
Girdiginiz sayi: 10 (bu satır sayı girdikten sonra gözükür. 10 örnek vermek amaçlı yazdığım sayı, ne girdiyseniz o gözükür.)

centos’da ssh’dan speedtest.net ile hız testini sorgulama

Linux işletim sistemlerinde text ekranında tarayıcıya ulaşıp adres satırına speedtest.net yazıp direkt hız testini sorgulama gibi bir imkanımız olmadığından dolayı, bunu kodlarla yapmamızı sağlayan modülü kurmasını ve kullanımına bi bakalım…

wget wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod a+rx speedtest.py
sudo mv speedtest.py /usr/local/bin/speedtest-cli
sudo chown root:root /usr/local/bin/speedtest-cli

ssl sertifikasından dolayı hata verir ve kurulum dosyasını çekemezsek üstteki komutların 1. satırındaki yerine aşağıdakini yazın

wget https://raw.github.com/sivel/speedtest-cli/master/speedtest.py --no-check-certificate

kurulumu tamamladıktan sonra speedtest-cli kodu ile hız testimizi sorgulatabiliriz, örnek çıktı aşağıdaki gibi olacaktır.

ssh speed test
ssh speed test

eğer farklı lokasyonda test yapmak isterseniz

speedtest-cli --server 10994

buradaki 10994 olan Radore’nin server id’si oluyor, speedtest’e kayıtlı olan bütün sunucuların id’sine şuradan ulaşabilirsiniz: https://www.speedtest.net/speedtest-servers.php

Hız testinizin sonucunu görsel olarak almak isterseniz sorgunun sonuna –share eklemeniz yeterli olacaktır.

speedtest-cli --server 10994 --share
radore serverinde speedtest sonucu
radore serverinde speedtest sonucu
speedtest.net görsel sonucu
speedtest.net görsel sonucu