Bir şeyi öğrenmek için, başarısız olma korkusu olmadan yapmanız gerekir. Pratikliğe inanıyorum ve bu nedenle size Scripting Language'in pratik dünyasına eşlik edeceğim.
Bu makale, İlk makalemizin bir uzantısıdır. Linux Kabuğu ve Temel Kabuk Komut Dosyasını Anlayın - Bölüm I, bu makalede sizi hayal kırıklığına uğratmayacağımıza devam ederek size Scripting'in tadına baktık.
#!/bin/bash. MAX_NO=0. echo -n "5 ile 9 arasında bir sayı girin:" MAX_NO okuyun. Eğer! [ $MAX_NO -ge 5 -a $MAX_NO -le 9 ]; sonra yankı "WTF... 5 ile 9 arasında bir sayı girmek istiyorum, Tekrar Dene" çıkış 1. fi. açık. için (( i=1; ben<=MAKS_NO; i++ )) için (( s=MAX_NO; s>=i; s-- )) do echo -n " " için yapılır (( j=1; j<=i; j++ )) echo -n " . done echo "" done ###### İkinci aşama ##################### için (( i=MAX_NO; ben>=1; ben-- )) do for (( s=i; s<=MAX_NO; s++ )) do echo -n " " için (( j=1; j<=i; j++ )) echo -n " . yapıldı yankı "" tamamlamak. echo -e "\n\n\t\t\t Ne zaman yardıma ihtiyacınız olursa Tecmint.com her zaman yanınızda"
Yukarıdakilerin çoğu'anahtar kelimeler' sizin tarafınızdan bilinir ve çoğu açıklayıcıdır. Örneğin., MAKS değişkenin maksimum değerini ayarlar, for bir döngüdür ve döngü içindeki herhangi bir şey, döngü verilen girdi değeri için geçerli olana kadar tekrar tekrar yürütülür.
[[e-posta korumalı] ~]# chmod 755 Special_Pattern.sh. [[e-posta korumalı] ~]# ./Special_Pattern.sh. (5 ile 9 arasında bir sayı girin): 6... .... .... .... .... .... .... .... .... .... ... Ne zaman yardıma ihtiyacınız olursa Tecmint.com her zaman yanınızda
Herhangi bir programlama dilinin biraz farkındaysanız, yukarıdaki betiği öğrenmek zor değildir, hesaplama, programlama ve Linux'ta yeni olsanız bile çok zor olmayacaktır.
Special_Pattern.sh dosyasını indirin
Kim demiş, Linux renksizdir ve sıkıcı, aşağıdaki kodları herhangi bir şeye kaydedin [nokta] NS, çalıştırılabilir yap ve Çalıştır, nasıl olduğunu söylemeyi unutma, Neler başarabileceğini düşün, bir yere uygula.
#!/bin/bash. clear echo -e "33[1m Merhaba Dünya" # cesur efekt. echo -e "33[5m Yanıp Sönme" # göz kırpma efekti. echo -e "33[0m Merhaba Dünya" # normale geri dön. echo -e "33[31m Merhaba Dünya" # Kırmızı renk. echo -e "33[32m Merhaba Dünya" # Yeşil renk. echo -e "33[33m Merhaba Dünya" # Ekranda kalanları görün. echo -e "33[34m Merhaba Dünya" echo -e "33[35m Merhaba Dünya" echo -e "33[36m Merhaba Dünya" echo -e -n "33[0m" # normale geri dön. echo -e "33[41m Merhaba Dünya" echo -e "33[42m Merhaba Dünya" echo -e "33[43m Merhaba Dünya" echo -e "33[44m Merhaba Dünya" echo -e "33[45m Merhaba Dünya" echo -e "33[46m Merhaba Dünya" echo -e "33[0m Merhaba Dünya"
Not: Şimdi renk koduyla uğraşmayın, sizin için önemli olanlar yavaş yavaş dilinizde olacak.
Uyarı: Terminalinizde yanıp sönme özelliği olmayabilir.
[[e-posta korumalı] ~]# chmod 755 Renkli.sh. [[e-posta korumalı] ~]# ./Colorfull.sh Selam DünyaGoz kirpmakSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam DünyaSelam Dünya
Renkli.sh'yi indirin
Bu komut dosyası, bir dosya (hatırlamak? dizin/sürücü/…. her şey dosya olarak kabul edilir, Linux). Yukarıdaki komut dosyasının mevcut sınırlaması, kullanarak adın otomatik olarak tamamlanmasını desteklememesidir. SEKME. Ayrıca, şifrelenecek komut dosyasını ve dosyayı aynı klasöre yerleştirmeniz gerekir. yüklemeniz gerekebilir”pinentry-gui”, kullanarak yum veya uygun gerekirse paket.
[[e-posta korumalı] ~]# yum pinentry-gui'yi kurun. [[e-posta korumalı] ~]# apt-get kurulum pinentry-gui
“adlı bir dosya oluşturunŞifrele.sh” ve aşağıdaki betiği yerleştirin, yürütülebilir hale getirin ve gösterildiği gibi çalıştırın.
#!/bin/bash. echo "Hoş geldiniz, sizin için bir dosya/klasör şifrelemeye hazırım" echo "şu anda bir sınırlamam var, Beni şifrelenecek bir dosyanın bulunduğu klasöre yerleştir" echo "Dosya Adını Uzantılı Olarak Girin" dosyayı oku; gpg -c $dosya. echo "Dosyayı başarıyla şifreledim..." echo "Şimdi orijinal dosyayı kaldıracağım" rm -rf $dosya
[[e-posta korumalı] ~]# chmod 755 Şifrele.sh. [[e-posta korumalı] ~]# ./Encrypt.sh Hoş geldiniz, sizin için bir dosya/klasör şifrelemeye hazırım. şu anda bir sınırlamam var, Beni şifrelenecek bir dosyanın bulunduğu klasöre yerleştir. package.xml ┌─────────────────────────────────────────── uzantılı Tam Dosya Adını girin ─────────────┐ │ Parola girin │ │ │ │ │ │ Parola *******__________________________________ │ │ │ ││ ────────────────────────────────────────── ─────┘ Lütfen bu parolayı tekrar girin ┌─────────────────────────────────────────── ────┐ │ Lütfen bu parolayı tekrar girin │ │ │ │ Parola ********________________________________ │ │ │ │ │ ────────────────────────────────────────── ─────┘ Dosyayı başarıyla şifreledim... Şimdi orijinal dosyayı kaldıracağım.
gpg -c: Bu, dosyanızı bir geçiş anahtarı (aka) kullanarak şifreleyecektir. parola. Bu öğrenme sürecinde, gerçek öğrenme sürecinin bu kadar kolay olabileceğini asla düşünmezdiniz. Yani bir dosyayı şifreledikten sonra neye ihtiyacınız var? Açıkça! dosyanın şifresini çözme. Ve sizden istiyorum – öğrenen, okuyucu şifre çözme senaryosunu kendiniz yazsın, merak etmeyin sizi ortada bırakmıyorum, sadece bu makaleden bir şeyler kazanmanızı istiyorum.
Not: gpg -d dosyaadı.gpg > dosya adı şifre çözme komut dosyanızda uygulamanız gereken şeydir. Başarılı olursan yazını yoruma yazabilirsin, olmazsa senin için yazmamı isteyebilirsin.
Encrypt.sh'yi indirin
Sunucu kullanımını kontrol etmek, bir yöneticinin önemli görevlerinden biridir ve iyi bir yönetici, günlük görevlerini nasıl otomatikleştireceğini bilen kişidir. Sunucunuz hakkında bu tür birçok bilgiyi verecek olan script aşağıdadır. Kendiniz kontrol edin.
#!/bin/bash tarihi; echo "uptime:" uptime echo "Şu anda bağlı:" w echo "" echo "Son oturum açmalar:" last -a |head -3 echo "" echo "Disk ve bellek kullanımı:" df -h | xarglar | awk '{print "Serbest/toplam disk: " $ 11 " / " $9}' free -m | xargs | awk '{print "Boş/toplam bellek: " 17 $ " / " 8 $ " MB"}' echo "" start_log=`head -1 /var/log /mesajlar |cut -c 1-12` oom=`grep -ci kill /var/log/messages` echo -n "$start_log 'dan beri OOM hataları:" $oom echo "" echo "" echo "Kullanım ve en pahalı işlemler:" top -b |head -3 echo top -b |head -10 |kuyruk -4 echo "" echo "TCP bağlantı noktalarını açın:" nmap -p- -T4 127.0.0.1 echo "" echo "Mevcut bağlantılar:" ss -s echo "" echo "işlemler:" ps auxf --width=200 echo "" echo "vmstat:" vmstat 1 5
[[e-posta korumalı] ~]# chmod 755 Sunucu-Sağlık.sh. [[e-posta korumalı] ~]# ./Server-Health.sh 16 Temmuz Salı 22:01:06 IST 2013. çalışma süresi: 22:01:06 174 güne kadar, 4:42, 1 kullanıcı, yük ortalaması: 0,36, 0,25, 0,18. Şu anda bağlı: 22:01:06 174 güne kadar, 4:42, 1 kullanıcı, yük ortalaması: 0,36, 0,25, 0,18. KULLANICI TTY'DEN [e-posta korumalı] BOŞ JCPU PCPU NEDİR. tecmint pts/0 116.72.134.162 21:48 0.00s 0.03s 0.03s sshd: tecmint [priv] Son girişler: tecmint pts/0 Sal Tem 16 21:48 hala girişte 116.72.134.162. tecmint puan/0 Sal Tem 16 21:24 - 21:43 (00:19) 116.72.134.162. Disk ve bellek kullanımı: Boş/toplam disk: 292G / 457G. Boş/toplam bellek: 3510 / 3838 MB. 14 Temmuz 03:37: 0'dan beri OOM hataları. Kullanım ve en pahalı süreçler: ilk - 22:01:07 174 güne kadar, 4:42, 1 kullanıcı, yük ortalaması: 0,36, 0,25, 0,18. Görevler: Toplam 149, 1 koşu, 148 uyku, 0 durdu, 0 zombi. Cpu(lar): %0.1us, %0.0sy, %0.0ni, %99.3id, %0.6 wa, %0.0hi, %0.0si, 0.0%st PID KULLANICI PR NI VIRT RES SHR S %CPU %MEM TIME+ KOMUT 1 kök 20 0 3788 1128 932 S 0.0 0.0 0:32.94 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:14.07 taşıma/0
Not: Size çıktıyı terminalde veren betiği verdim, çıktıyı ileride başvurmak üzere bir dosyada almaya ne dersiniz? Yönlendirme operatörünü kullanarak uygulayın.
Server-Health.sh dosyasını indirin
Bölümde disk kullanıldığında e-posta almaya ne dersiniz? BÖLÜM izin verilen maksimumdan daha büyüktür, küçük değişikliklerle web yöneticileri için hayat kurtarıcı bir komut dosyasıdır.
MAKS=95. [e-posta korumalı]PARÇA=sda1. USE=`df -h |grep $PART | awk '{ 5 $ yazdır }' | kes -d'%' -f1' if [ $USE -gt $MAX ]; ardından yankı "Kullanılan yüzde: $USE" | mail -s "Disk alanı bitiyor" $EMAIL. fi
Not: Kaldırmak "KULLANICI” kullanıcı adınızla. ' kullanarak postayı kontrol edebilirsiniz.posta' emretmek.
Check-Disk-Space.sh'yi indirin
Komut dosyası yazma ve programlama sınırların ötesindedir, her şey ve her şey gerektiği gibi uygulanabilir. Şimdilik bu kadar, bir sonraki makalemde size farklı komut dosyası tatları vereceğim. O zamana kadar serin ve bizi izlemeye devam edin, keyfini çıkarın.