cinnetcrash / Biyoinformatik_TR

Bu sayfada Biyoinformatik analizler ile ilgili eğitim materyalleri bulunmaktadır.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bash Scripting ile Basit Otomasyon ve Sık Kullanılan Komutlar

Komut Satırı

Kabuk, bilgisayarınızı bir grafik kullanıcı arabirimi (GUI) aracılığıyla kontrol etmek için farenizi ve klavyenizi kullanmak yerine bir klavye ile kontrol etmenizi sağlayan bir komut satırı arabirim programıdır. İlk başta garip ve zor görünebilir, ancak kabukta ustalaşmanın birçok nedeni vardır.

  • Çoğu biyoinformatik programı yalnızca komut satırından çalıştırılabilir. Dolayısıyla, genomik veya transkriptomik çalışmak istiyorsanız kabuğa aşina olmanız gerekecektir.

  • Kabuk, işinizi daha verimli ve daha hızlı yapmanız için size güç verir. Bu, tekrarlanabilir bir araştırma programı geliştirmeye yönelik ilk adımdır.

  • Bulut bilgisayarlarına yalnızca komut satırı arabirimleri üzerinden erişilebilir.

man

Bu komut manual'in kısaltmasıdır. Bu komutu kullanarak herhangi bir program ya da komut ile ilgili yardım alabilirsiniz.

$ man whoami

help

Help komutu kullanarak bir çok komut veya araç ile ilgili ayrıntılı bilgi alabilirsiniz. Kullanım örneği de aşağıdaki gibidir.

$ less --help

ls

komutu bulunduğunuz dizin içerisinde bulunan dosyları listelemeye yarar. Listelemek istediğiniz dosyada ekstra argümanlar kullanarak daha ayrıntılı bir listeleme yapabilirsiniz.

$ ls -l

mkdir

Bu komut size bulunduğunuz dizin içersinde klasör oluşturmaya yardımcı olan bir komuttur. Bu komutu kullanarak birden fazla klasörü aynı anda oluşturabilirsiniz.

$ mkdir klasör1 klasör2

cd

Bu komut "change directory" yani dizin değiştirmeye yarayan çok kullanılan komutlardan bir tanesidir.

$ cd klasör1

pwd

Bu komut bulunduğunuz dizini ekrana yazdırmaya yarayan bir komuttur.

$ pwd

Çıktısı da şu şekilde olmaktadır. "home/user/Desktop/klasor1"

whoami

Bu komut ile o an işlem yaptığınız kullanıcının adını ekrana yazdırabilirsiniz.

$ whoami

rm

Bu komutu remove yani silme işlemi yapmaya yaramaktadır. Bu komut kullanılarak genellikle dosyalar silinebilmektedir. İsterseniz -r opsiyonunu kullanarak klasörleri de silebilirsiniz.

$ rm -r

head

Bu komut herhangi bir dosya içerisinde bulunan bilgilerin en üst kısmında bulunan kısmını göremeyi sağlar.

$ head -5 dosyaadi.txt
  • Bu komut ile "dosyaadi.txt" dosyasının ilk 5 satırını önizleyebilirsiniz.

less

$ less

more

$ less

cat

Bu komut ile herhangi bir dosya içerisinde bulunan tüm bilgiler kabuk ekranına yazdırılabilir.

$ cat

touch

Bu komutu kullanarak hızlı bir şekilde bir veya birden fazla dosya oluşturabilirsiniz.

$ touch

cp

Bu komutu kullanarak herhangi bir dosyayı kopyalayabilirsiniz. Bu kopyalama işlemi sonrası orjinal dosya silinmeyecektir.

$ cp dosya1.txt ../../hello_world

bu komut ile dosya1.txt dosyası iki üst klasörde bulunan "hello_world" klasörü içersine kopyalanır.

mv

Bu komut ile iki işlem yapabilirsiniz. Bir tanesi adından da anlaşılacağı üzere move yani taşıma işlemi, diğeri de herhangi bir dosyanın adını değiştirmeye yaramaktadır.

Taşıma için

$ mv dosya2.txt ../../hello_world

İsim değiştirmek için

$ mv dosya2.txt yeni_dosya.txt

İki şekilde de kullanabilirsiniz.

chmod

su

$ mv dosya2.txt yeni_dosya.txt

sudo

$ mv dosya2.txt yeni_dosya.txt

sudo apt update / sudo apt-get update

$ mv dosya2.txt yeni_dosya.txt

sudo apt upgrade / sudo apt-get upgrade

$ mv dosya2.txt yeni_dosya.txt

df

$ mv dosya2.txt yeni_dosya.txt

history

$ mv dosya2.txt yeni_dosya.txt

wget

$ mv dosya2.txt yeni_dosya.txt

git

$ mv dosya2.txt yeni_dosya.txt

exit

$ mv dosya2.txt yeni_dosya.txt

reboot

$ mv dosya2.txt yeni_dosya.txt

unzip

$ mv dosya2.txt yeni_dosya.txt

gunzip / gzip

$ mv dosya2.txt yeni_dosya.txt

tar

$ mv dosya2.txt yeni_dosya.txt

pd

$ mv dosya2.txt yeni_dosya.txt

top / htop

$ mv dosya2.txt yeni_dosya.txt

Kısayollar

$ mv dosya2.txt yeni_dosya.txt

Program Yükleme

Programları nereden bulabilirim?

Program Çalıştırma

Program nasıl çalıştırılır?

Bash Scripts

echo'yu wc ile değiştirebilir ve çalıştırabilirsiniz.

for file in *.fastq
do
	wc ${file}
done
$ for filename in *.zip
> do
> unzip $filename
> done

Dosya koleksiyonlarıyla çalışmak; şartlı scriptler (conditionals)

for i in *
do
   if [ -f $i ]; then
      echo $i is a file
   elif [ -d $i ]; then
      echo $i is a directory
   fi
   done

Loops (Döngüler)

Döngüler, komutları tekrar tekrar yürütmemize izin verdikleri için otomasyon yoluyla verimliliği gerçekten artırabilir. Joker karakterler ve sekme tamamlama gibi, döngüleri kullanmak da yazma miktarını (ve yazım hatalarını) azaltır.

Bir sonraki bölümde, çok sayıda dosyaya bir şeyler yapan döngüler oluşturacağız.

bir klasör içerisinde bulunan tüm dosyaların ekrana yazdırılması.

$ for i in sequence.*
> do
>    echo $i
> done
  • for kullanılarak herhangi bir döngüyü kendiniz de yaratabilirsiniz. Burada kullanılan i değişkeni standart olmamakla birlikte
  • istediğiniz şekilde değiştirilebilmektedir.

About

Bu sayfada Biyoinformatik analizler ile ilgili eğitim materyalleri bulunmaktadır.


Languages

Language:Shell 100.0%