Kabuk Komutlarının Farklı Sınıflandırmalarını ve Linux'ta Kullanımlarını Anlamak
Linux sisteminiz üzerinde mutlak kontrol elde etmek söz konusu olduğunda hiçbir şey komut satırı arayüzünün (CLI) yanına yaklaşamaz. Linux'ta uzman bir kullanıcı olabilmek için, farklı türdeki kabuk komutlarını ve bunları terminalden kullanmanın uygun yollarını anlamak gerekir.
Linux'ta çeşitli komut türleri vardır ve yeni bir Linux kullanıcısı için farklı komutların anlamlarını bilmek, verimli ve hassas kullanım sağlar. Bu nedenle, bu makalede Linux'taki kabuk komutlarının çeşitli sınıflandırmalarını inceleyeceğiz.
Önerilen Okuma: Linux'ta 5 İlginç Komut Satırı İpucu ve Püf Noktası – Bölüm 1
Unutulmaması gereken önemli bir nokta, komut satırı arayüzünün kabuktan farklı olmasıdır; yalnızca kabuğa erişmeniz için bir araç sağlar. Aynı zamanda programlanabilen kabuk, komutları kullanarak çekirdekle iletişim kurmayı mümkün kılar.
Linux komutlarının farklı sınıflandırmaları aşağıdaki sınıflandırmalara girer:
1. Program Çalıştırılabilirleri (Dosya Sistemi Komutları)
Bir komutu çalıştırdığınızda Linux, söz konusu komutun çalıştırılabilir dosyasını soldan sağa doğru ` PATH çevre değişkeninde saklanan dizinlerde arar.
` PATH
içindeki dizinleri aşağıdaki gibi görüntüleyebilirsiniz:
echo $PATH
/home/aaronkilik/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Yukarıdaki sırayla, önce /home/aaronkilik/bin
dizini, ardından /usr/local/sbin
dizini aranacak, aramada sıra önemlidir işlem.
/usr/bin
dizinindeki dosya sistemi komutlarına örnekler:
ll /bin/
Örnek Çıktı
total 16284
drwxr-xr-x 2 root root 4096 Jul 31 16:30 ./
drwxr-xr-x 23 root root 4096 Jul 31 16:29 ../
-rwxr-xr-x 1 root root 6456 Apr 14 18:53 archdetect*
-rwxr-xr-x 1 root root 1037440 May 17 16:15 bash*
-rwxr-xr-x 1 root root 520992 Jan 20 2016 btrfs*
-rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-calc-size*
lrwxrwxrwx 1 root root 5 Jul 31 16:19 btrfsck -> btrfs*
-rwxr-xr-x 1 root root 278376 Jan 20 2016 btrfs-convert*
-rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-debug-tree*
-rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-find-root*
-rwxr-xr-x 1 root root 270136 Jan 20 2016 btrfs-image*
-rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-map-logical*
-rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-select-super*
-rwxr-xr-x 1 root root 253816 Jan 20 2016 btrfs-show-super*
-rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfstune*
-rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-zero-log*
-rwxr-xr-x 1 root root 31288 May 20 2015 bunzip2*
-rwxr-xr-x 1 root root 1964536 Aug 19 2015 busybox*
-rwxr-xr-x 1 root root 31288 May 20 2015 bzcat*
lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzcmp -> bzdiff*
-rwxr-xr-x 1 root root 2140 May 20 2015 bzdiff*
lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzegrep -> bzgrep*
-rwxr-xr-x 1 root root 4877 May 20 2015 bzexe*
lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzfgrep -> bzgrep*
-rwxr-xr-x 1 root root 3642 May 20 2015 bzgrep*
2. Linux Takma Adları
Bunlar kullanıcı tanımlı komutlardır, takma ad kabuk yerleşik komutu kullanılarak oluşturulurlar ve bazı seçenekler ve bağımsız değişkenlerle birlikte diğer kabuk komutlarını içerirler. Buradaki fikir, uzun komutlar için temel olarak yeni ve kısa adlar kullanmaktır.
Önerilen Okuma: Linux Komutlarında (!) Sembol veya Operatörün 10 Şaşırtıcı ve Gizemli Kullanımı
Takma ad oluşturmanın sözdizimi aşağıdaki gibidir:
alias newcommand='command -options'
Sisteminizdeki tüm takma adları listelemek için aşağıdaki komutu verin:
alias -p
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
Linux'ta yeni bir takma ad oluşturmak için aşağıdaki örnekleri inceleyin.
alias update='sudo apt update'
alias upgrade='sudo apt dist-upgrade'
alias -p | grep 'up'
Ancak yukarıda oluşturduğumuz takma adlar yalnızca geçici olarak çalışır, sistem yeniden başlatıldığında bir sonraki önyüklemeden sonra çalışmaz. Aşağıda gösterildiği gibi .bashrc
dosyanıza kalıcı takma adlar ayarlayabilirsiniz.
Bunları ekledikten sonra aşağıdaki komutu çalıştırarak aktif hale getirin.
source ~/.bashrc
3. Linux Kabuğuna Ayrılmış Kelimeler
Kabuk programlamada if, then, fi, for, while gibi kelimeler kullanılır. >, case, esac, else, til ve daha pek çok sözcük kabukla ayrılmış sözcüklerdir. Açıklamadan da anlaşılacağı gibi, kabuk için özel bir anlam taşırlar.
Gösterildiği gibi type
komutunu kullanarak tüm Linux kabuğu anahtar kelimelerini listeleyebilirsiniz:
type if then fi for while case esac else until
if is a shell keyword
then is a shell keyword
fi is a shell keyword
for is a shell keyword
while is a shell keyword
case is a shell keyword
esac is a shell keyword
else is a shell keyword
until is a shell keyword
Önerilen Okuma: Pratik Örneklerle 10 Faydalı Linux Zincirleme Operatörü
4. Linux Kabuk İşlevleri
Kabuk işlevi, geçerli kabuk içinde toplu olarak yürütülen bir komutlar grubudur. İşlevler, bir kabuk betiğinde belirli bir görevi gerçekleştirmeye yardımcı olur. Bir komut dosyasında kabuk işlevlerini yazmanın geleneksel biçimi şöyledir:
function_name() {
command1
command2
…….
}
Alternatif olarak,
function function_name {
command1
command2
…….
}
Shell_functions.sh
isimli scriptte kabuk fonksiyonlarının nasıl yazılacağına bir göz atalım.
#!/bin/bash
#write a shell function to update and upgrade installed packages
upgrade_system(){
sudo apt update;
sudo apt dist-upgrade;
}
#execute function
upgrade_system
İki komutu yürütmek yerine: sudo apt update
ve sudo apt dist-upgrade
komut satırından, iki komutu tek bir komut olarak yürütmek için basit bir kabuk işlevi yazdık komut, bir komut dosyasındaki upgrade_system
.
Önerilen Okuma: Linux'a Yeni Başlayanların Shell Programlamayı Öğrenmesi için 5 Shell Komut Dosyası
Dosyayı kaydedin ve ardından komut dosyasını yürütülebilir hale getirin. Son olarak aşağıdaki gibi çalıştırın:
chmod +x shell_functions.sh
./shell_functions.sh
5. Linux Kabuğu Yerleşik Komutları
Bunlar kabuğun içine yerleştirilmiş Linux komutlarıdır, dolayısıyla bunları dosya sisteminde bulamazsınız. Bunlar arasında pwd, cd, bg, takma ad, geçmiş, bulunur. yazın, kaynak, oku, çıkış ve diğerleri.
Gösterilen şekilde type
komutunu kullanarak Linux yerleşik komutlarını listeleyebilir veya kontrol edebilirsiniz:
type pwd
pwd is a shell builtin
$ type cd
cd is a shell builtin
$ type bg
bg is a shell builtin
$ type alias
alias is a shell builtin
$ type history
history is a shell builtin
Bazı Linux yerleşik Komutlarının kullanımı hakkında bilgi edinin:
- Linux'ta 15 'pwd' Komut Örneği
- Linux'ta 15 'cd' Komut Örneği
- Linux'un Gücünü Öğrenin 'tarih' Komutu
Çözüm
Bir Linux kullanıcısı olarak çalıştırdığınız komutun türünü bilmek her zaman önemlidir. İlgili birkaç çizimi de içeren yukarıdaki kesin ve anlaşılması kolay açıklamayla, muhtemelen Linux komutlarının çeşitli kategorilerini iyi anladığınıza inanıyorum.
Bize iletmek istediğiniz sorularınız veya ek fikirleriniz için aşağıdaki yorum bölümünü kullanarak da bize yardımcı olabilirsiniz.