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:

  1. Linux'ta 15 'pwd' Komut Örneği
  2. Linux'ta 15 'cd' Komut Örneği
  3. 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.