bash ile klasördeki toplam dosya sayısı

Başlatan myıldız, 30 Mayıs 2020 - 05:09:23

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

myıldız

Merhaba,böyle bir sorum var çözemiyorum yardımcı olursanız çok sevinirim..

Bulunduğu klasördeki dosyaların adlarını alt alta listeleyen ve sona klasördeki toplam dosya sayısını yazan kabuk program

mhmtkrktr

#1
find . -maxdepth 1 -type f -not -path '*/\.*' -printf '%f\n' | awk 'BEGIN {x=0} NF {x++} END {print "toplam [",x,"] dosya"};{print}' | pr -to 2

find = bul
. (nokta) = içinde olduğun dizinde ara
-maxdepth 1 = bulunduğu dizinde kal (alt dizin var ise daha derine inme)
-type f = sadece dosyaları ara
-not -path '*/\.*' = dosya yolunda şunun bulunduğu içeriği dışla [ '*/\.*' ] (gizli dosyalar için ekledim)
-printf '%f\n' = bulunanları dosya adıyla sınırlayarak çıktılamak için
BEGIN {x=0} NF {x++} END = sıfırdan başlayarak her satır için x 'i bir arttır
{print "toplam [",x,"] dosya"} = toplam x 'i ekrana bas
{print} = satırları ekrana bas
pr -to 2 = gözüm artık iyi seçemiyor, iki karakter içeriden başla

Equilibrium

Alıntı yapılan: myıldız - 30 Mayıs 2020 - 05:09:23Merhaba,böyle bir sorum var çözemiyorum yardımcı olursanız çok sevinirim..

Bulunduğu klasördeki dosyaların adlarını alt alta listeleyen ve sona klasördeki toplam dosya sayısını yazan kabuk program

Şu işini görür sayın forum üyesi ...

#!/bin/bash

# Bulunduğunuz klasördeki dosyaları listele
for dosya in *; do
    # Eğer bir dosya ise, adını yazdır
    if [ -f "$dosya" ]; then
        echo "$dosya"
    fi
done

# Toplam dosya sayısını hesapla
toplam_dosya_sayisi=$(ls -1 | wc -l)

# Toplam dosya sayısını yazdır
echo "Toplam dosya sayısı: $toplam_dosya_sayisi"

Örnek Ekran Görüntüsü (Sistem : GNU/Linux Mint 21.1 x64)