Просте запитання, я впевнений. Я бачив відповідь, яка показує, як це зробити, включаючи підкаталоги, але я хочу знати, скільки файлів (а не папок) є лише в поточному каталозі. Спасибі.
Просте запитання, я впевнений. Я бачив відповідь, яка показує, як це зробити, включаючи підкаталоги, але я хочу знати, скільки файлів (а не папок) є лише в поточному каталозі. Спасибі.
Відповіді:
ls -F |grep -v / | wc -l
ls -F перерахуйте всі файли та додайте до запису індикатор (один із * / => @ |) grep -v /зберігайте всі рядки, що не містять косу рису wc -l рахувати рядкиСпробуйте це
ls -al | grep ^[-] | wc -l
ls -al - список усіх файлів з довгим форматом лістингуgrep ^[-] - пошук рядка, який починається з "-", що є символом для позначення звичайного файлу, коли файл списку з ls -alwc -l - рахувати рядки-наl
Я просто хочу додати відповідь свого, тому що мені подобається грати з Башем . Ось це іде:
echo "Directory $(pwd) has $(ls -F |grep -v / | wc -l) files"
Нижче наведено приклад результату мого /dataкаталогу:
Directory /data has 580569 file(s).
І нижче мої пояснення:
echo double-quoted-message надрукує бажане повідомлення.$(any-desirable-valid-command)всередині подвійного цитованого повідомлення echoзапечатано результат виконання відповідних команд.pwd буде надрукувати поточний каталог.ls -Fпризначений для перерахування всіх файлів та додавання індикатора (один із * / => @ |) до записів. Я скопіював це з відповіді Тома .grep -v /це команда пошуку простого тексту, -v /параметр буде зберігати всі рядки, які не містять косу рису (-ів).wc -l буде друкувати підрахунок рядківЯ знаю, що цьому питанню 3 роки, я просто не можу стверджувати, що я хочу додати ще одну відповідь.
Щоб підрахувати загальну кількість файлів із конкретним розширенням, ви можете ввести:
ls|grep jpg |wc -l