Bash ile Toplu Klasör Oluşturma
Aşağıda, xargs komutu kullanılarak bir dosyada listelenen klasör adlarına göre toplu klasör oluşturma işlemi anlatılmaktadır. Bu işlem hem pratik hem de zaman kazandırıcıdır.
Hazırlık Aşaması
1. foldernames.txt Dosyasını Oluşturma
folder1
folder2
folder3
folder4
folder5
folder6
Açıklama:
- Yukarıdaki içerik ile bir dosya oluşturulacaktır.
- Her satır bir klasör adını temsil eder.
Dosyayı oluşturmak için aşağıdaki komutu terminale yazabilirsiniz:
echo -e "folder1\nfolder2\nfolder3\nfolder4\nfolder5\nfolder6" > foldernames.txt
echoKomutu: Metni terminale yazdırır.-eParametresi: Özel karakterleri (\ngibi) işlevsel hale getirir.> foldernames.txt: Çıktıyıfoldernames.txtadlı dosyaya kaydeder.
Terminal Komutu
xargs mkdir < foldernames.txt
Bu komut, foldernames.txt dosyasındaki her satır için bir klasör oluşturur.
Satır Satır Teknik Açıklama
1. xargs Komutu
xargs mkdir < foldernames.txt
- Amaç: Dosyadaki her satırı
mkdirkomutuna argüman olarak geçirerek klasör oluşturur. xargs: Standart girdiyi (stdin) alır ve bunu belirtilen komuta argüman olarak aktarır.mkdir: Belirtilen adla yeni bir klasör oluşturur.< foldernames.txt:foldernames.txtdosyasını girdi olarak okur.
İşleyiş:
foldernames.txtdosyası satır satır okunur.- Her satırdaki isim
mkdirkomutuna argüman olarak verilir. mkdirkomutu, bu isimlerle yeni klasörler oluşturur.
Örnek
Komutun Çalıştırılması
Terminalde şu komut çalıştırılır:
xargs mkdir < foldernames.txt
Çıktı
ls komutunu çalıştırarak oluşturulan klasörleri görebilirsiniz:
ls
- Sonuç:
folder1 folder2 folder3 folder4 folder5 folder6
Önemli Notlar ve İpuçları
Hedef Dizini Belirtme: Klasörlerin farklı bir dizinde oluşturulmasını istiyorsanız,
cdkomutu ile önce o dizine geçin veyamkdirkomutuna hedef yolu ekleyin:xargs -I {} mkdir /hedef/dizin/{} < foldernames.txt
Hata Kontrolü: Eğer klasör zaten mevcutsa,
mkdirhata verir. Bu hataları göz ardı etmek için-pparametresini kullanabilirsiniz:xargs mkdir -p < foldernames.txt
Boş Satırları Atla: Eğer
foldernames.txtdosyasında boş satırlar varsa, bunları yok saymak için aşağıdaki komut kullanılabilir:grep -v "^$" foldernames.txt | xargs mkdir
Dosya Adı Dinamikliği: Farklı bir dosya adı kullanmak için komutu şu şekilde düzenleyebilirsiniz:
xargs mkdir < başka_dosya.txt
Sonuç
Bu yöntem, birden fazla klasörü hızlı ve kolay bir şekilde oluşturmanızı sağlar. Özellikle büyük projelerde veya sık sık klasör yönetimi yapıyorsanız oldukça kullanışlıdır.