Alias nedir? Nasıl kullanırız?

Selamlar. Bugün “alias” özelliğini inceliyoruz!

1. Aliaslar nedir?

Aliaslar kolayca function atamanızı sağlar. Kısa bir deyişle bir komut ile başka komutu çalıştırırsınız.

Denemek için terminale alias test="echo 'bu bir testtir.'" yazın. Artık test yazınca bu bir testtir. çıktısı gelecek.

Ve şimdi terminali kapatıp açmayı deneyin ve tekrar test yazın. Alias yok olacaktır. Çünkü bunu her terminal açılışında çalışacak şekilde ayarlamadık. Hadi gelin buna biraz bakalım.

2. Kalıcılaştırma

Bunun için shell configinizi bulun.
Eğer bilmiyorsanız, echo $SHELL komutunun çıktısına bakın. Eğer içinde bash geçiyorsa bu ev klasörünüzdeki .bashrc, zsh geçiyorsa .zshrc, fish geçiyorsa .config/fish klasöründeki config.fish dosyasıdır.

Buna bu yazıda shell configi olarak bahsedilecek.

Shell configinize şöyle yazmalısınız: alias çalıştıracakkomut="çalışacakkomut" çalıştıracakkomut ve çalışacakkomut yerlerini düzenleyebilirsiniz. Örnek aliaslar;

# Reload aliases
alias rs="source ~/.bashrc"
alias ref="source ~/.bashrc"

# Clear aliases
alias c=clear
alias claer=clear
alias cl=clear
alias cleer=clear

# Sudo aliases
alias sodu="sudo"
alias soud="sudo"
alias sudu="sudo"
alias sodo="sudo"
alias please="sudo"

# NeoFetch aliases
alias neo="neofetch"
alias nf="neofetch"
alias neof="neofetch"

# Git aliases
alias g="git"
alias push='git add . && echo "Type a commit message." && read commitmsg && git commit -m "$commitmsg" && git push'

# Pacman alises
alias pc="sudo pacman"
alias pcin="sudo pacman -S"
alias pciny="sudo pacman -S --noconfirm"
alias pcrm="sudo pacman -Rcs"
alias pcrmy="sudo pacman -Rcs --noconfirm"
alias pcup="sudo pacman -Syu"
alias pcupy="sudo pacman -Syu --noconfirm"
alias pcupp="sudo pacman -Syyu"
alias pcuppy="sudo pacman -Syyu --noconfirm"
alias pcse="sudo pacman -Ss"

# APT aliases (Debian, Ubuntu etc.)
alias aptin="sudo apt install"
alias aptiny="sudo apt install -y"
alias aptrm="sudo apt remove"
alias aptrmy="sudo apt remove -y"
alias aptup="sudo apt update && sudo apt upgrade"
alias aptupy="sudo apt update && sudo apt upgrade -y"
alias aptse="sudo apt search"

# PKG aliases (Termux, FreeBSD etc.)
alias pkgin="sudo pkg install"
alias pkginy="sudo pkg install -y"
alias pkgrm="sudo pkg remove"
alias pkgrmy="sudo pkg remove -y"
alias pkgup="sudo pkg update && sudo pkg upgrade"
alias pkgupy="sudo pkg update && sudo pkg upgrade -y"
alias pkgse="sudo pkg search"

# Zypper aliases
alias zp="sudo zypper"
alias zy="sudo zypper"
alias zyp="sudo zypper"
alias zypp="sudo zypper"
alias zyppe="sudo zypper"
alias zyper="sudo zypper"
alias zpin="sudo zypper install"
alias zpiny="sudo zypper install -y"
alias zprm="sudo zypper remove"
alias zprmy="sudo zypper remove -y"
alias zpup="sudo zypper update"
alias zpupy="sudo zypper update -y"
alias zpse="sudo zypper search"

# Dnf aliases
alias dnfin="sudo dnf in"
alias dnfiny="sudo dnf in -y"
alias dnfrm="sudo dnf remove"
alias dnfrmy="sudo dnf remove -y"
alias dnfup="sudo dnf update"
alias dnfupy="sudo dnf update -y"
alias dnfse="sudo dnf search"

# Nix conf aliases
alias nixconf="sudo $EDITOR /etc/nixos/configuration.nix && sudo nixos-rebuild switch"

# VNC aliases
alias vnc_start="vncserver -geometry 1280x720"
alias vnc_stop="vncserver -geometry 1280x720 -kill :1"
13 Likes

Basit ve güzel bir anlatım olmuş elinize sağlık.
Claer detayı da çok hoş :laughing:

2 Likes

Tesekkurler.

O da yazim hatasini fixlemek icin :))

3 Likes

Clear demişken ek bilgi olarak Ctrl-l baya yeterli oluyor.

1 Like

Evet biliyorum da clear komutu da mevcut zaten. O da bir tercih.

1 Like

Benim gibi aur ve flatpak ayrı ayrı güncellemeye üşeniyorsanız alias up=‘yay ; flatpak update’
config içine ekleyin. Konsola up yazarak tek seferde güncelleyebilirsiniz

1 Like

alias update=“yay -Syu && flatpak update” seklinde de olabilir. iyi sistemmis bu da.

1 Like

Yay -Syu yazmaya gerek yok sadece yay yazınca otomatik olarak öyle kabul ediyor.

Bu arada sudo pacman -Syu yazma bağımlılığım var o yüzden güncelleme konusunda herhangi bir alias atamadım :man_shrugging:

1 Like

Biliyorum ama yarin birgun degisirse -Syu yaptigimiz icin birsey olmaz.

Ve pacman -Syu bildigim kadariyla AUR paketlerini guncellemiyor.

1 Like

Yay ile güncellemeleri haftada bir yapıyorum pacman sadece arch reposundakileri güncellediğini de biliyorum.

Pacman ile güncelleme komutunu girerken bir mutluluk hissediyorum. O yüzden uzunca yazıyorum.

1 Like

O zaman yay’e yayman diye alias at oldu bitti :smile:

2 Likes

Kullandığım alias’ları buradan paylaşmak isterim. Yeni konu açmak istemedim. fish shell kullanıyorum.

c

function c --wraps='rsync' --description 'alias c rsync --archive --partial --append-verify --info=progress2 --human-readable'
  rsync --archive --partial --append-verify --info=progress2 --human-readable $argv
end

Dosya kopyalamak için kullanıyorum. cp komutuna göre ekstra özellikleri var. Aktarım yarıda kalırsa, komutu tekrar koşarsanız kaldığı yerden devam edebiliyor. Ayrıca aktarım sırasında progress bar gösteriyor.

cat

function cat --wraps=batcat --description 'alias cat batcat'
  batcat $argv
end

cat yerine batcat programını kullanmak için.

guncelle

function guncelle --description 'alias guncelle sudo nala full-upgrade --purge'
  sudo nala full-upgrade --purge
end

apt yerine nala kullanıyorum. nala ile güncelleme yapmak için.

ls

function ls --wraps=eza --description 'alias ls eza'
  eza $argv
end

ls yerine eza programını kullanmak için.

mm

function mm --wraps='man' --description 'alias mm MANWIDTH=100 man --no-hyphenation $argv | code -'
  MANWIDTH=100 man --no-hyphenation $argv | code -
end

man sayfalarını vscode’da açmak için.

nano

function nano --description 'alias nano nano -mql'
 command nano -mql $argv
end

nano editöründe bazı özellikleri öntanımlı olarak açmak için.

youtube-1080

function youtube-1080 --wraps='yt-dlp' --description 'alias youtube-1080 yt-dlp -S res:1080 --embed-subs --sub-lang en,tr --write-auto-subs --compat-opt prefer-vp9-sort'
  yt-dlp -S res:1080 --embed-subs --sub-lang en,tr --write-auto-subs --compat-opt prefer-vp9-sort $argv
end

yt-dlp kullanarak maksimum 1080p çözünürlüklü olacak şekilde video indirmek için. Türkçe ve İngilizce altyazı varsa onları da dosyaya dahil ediyor.

yukle

function yukle --wraps='apt install' --description 'alias yukle sudo nala install'
  sudo nala install $argv
end

Program yüklemek için nala komutu.

sil

function sil --wraps='apt remove' --description 'alias sil sudo nala purge'
  sudo nala purge $argv
end

Program silmek için nala komutu.

gerial

function gerial --description 'alias gerial sudo nala history undo --purge last'
  sudo nala history undo --purge last
end

Son nala işlemini geri almak için kısayol.

4 Likes