Bu yazı, bir yazılım geliştiricisi olarak linux terminalde en çok kullanılan komutlar hakkında olacaktır. Linux terminal açık kaynak felsefesi ile yazılım geliştiren bir kimsenin eli ayağı niteliğindedir. Bu yüzden terminale dolayısı ile terminal komutlarına elimizden geldiğince hakim olmakta yarar var. Bu düşünceye dayanarak, Lnux yaz kampında bu gün gösterilen terminal komutlarına değineceğim.
İlk olarak
$PATH
komutu.(Büyük yazıldığına dikkat edelim) PATH çalıştırılabilir dosyaların yerini gösteren değişken. Kullanıcı tarafından çalıştırılabilecek komut ve yazılımların aranacakları yerleri belirtir. Yukarıdaki komutta tanımlı olan dzinleri listeler.
export PATH=$PATH:~/project
komutu ile bir önceki komut ile listelenen dizinlere kök dizinindeki project klasör dizininin eklenmesini sağlar. Bu işlem sadece terminalin kullanıldığı oturum için geçerli olur.
Kalıcı olarak eklemek için kök dizininde bulunan .bashrc dosyasına istenilen dizin eklenebilir. Bu işlemi terminal üzerinden nano editörü kullanılarak yapılabilir.
nano .bashrc
komutu terminal üzerinde .bashrc dosyasının içeriğinin düzenlenebilmesine olanak tanır. İstenilen değişiklikler yapıldıktan sonra
ctrl + x
kısa yolu editörden çıkılmasını sağlar. Değişiklikleri kaydetmek için “y” ve “enter” tuşlarına basılması yeterli olacaktır.
Dosya işlemleri ile ilgili komutlar
ls
komutu bulunulan dizindeki klasör ve dosyaları listeler.
ls -a
komutu bulunulan dizindeki dosya ve klasörleri gizli olanlar ile birlikte listeler.
cd ~/project
komutu kök dizindeki project klasör dizinine geçmeyi sağlar.
cd ..
komutu bir üst dizine geçmeyi sağlar.
pwd
bulunulan dizini gösterir.
mkdir deneme
Bulunulan dizine deneme isimli klasör oluşturur.
mkdir -p deneme/deneme1
Bulunulan dizinde iç içe dosya açar.
rm -rf deneme.txt
komutu klasör ya da dosya silmek için kullanılabilir.
nano deneme.txt
komutu eğer dizinde deneme.txt dosyası yoksa oluşturur ve terminal üzerinde düzenleyebilmek için açar.
cat gemfile
gemfile dosyasının içeriğini terminal üzerinde gösterir.
tail -f development.log
tail komutu dizindeki dosyanın son bölümünü gösterir. -f parametresi ile log dosyasının realtime takip edilebilmesini sağlar.
which ruby
komutu konsolda çalıştırılan komutların(ruby gibi) hangi dizinden çalıştırıldığını gösterir.
grep -i Hasan seed.rb
seed.rb dosyası içerisinde hasan stringini arar ve eşleşen satırları listeler. -i parametresi büyük küçük harf duyarlılık sorununu ortadan kaldırmak için kullanılabilir. Kullanılmadan da arama yapılabilir. Kullanılmadığı takdirde arama yaparken büyük küçük harfe duyarlı bir şekilde arama yapar.
find ~project/ruby -name "*.css"
Arama yapmak için kullanılır. Belirtilen dizindeki tüm css uzantılı dosyaları listeler.
Herhangi bir komutun aldığı parametreleri ve nasıl kullanıldığını görmek için
ls --help
komutu gibi istenilen komutun sonuna –help ekleyerek terminalde çalıştırılır.
Komut hakkında daha detaylı bilg almak için
man ls
komutu gibi istenilen komutun başına man ifadesi eklenip çalıştırılır.
Bu komutun çıktısı uzun olduğu için sayfa sayfa görebilmek için komutun sonuna more ifadesi eklenebilir. Bir sonraki sayfaya geçmek için space tuşuna basarak ilerlenebilir.