Используйте find :
Когда вы говорите «нерекурсивно», имели ли вы в виду, что вам нужно только количество файлов / каталогов в / home, но не в подкаталогах? В этом случае вы можете ограничить результаты до верхнего уровня с помощью параметра maxdepth
.
find /home -maxdepth 1 | wc -l
Использование for:
i=0; for home in ~/*; do (( i++ )); done; echo $i
Обратите внимание на пробелы между двойными круглыми скобками и заключенным i ++.
Если они все в одном каталоге, вы можете сделать:
for file in *mkv; do
mkvmerge -o "${file%.mkv}".nosubs.mkv --no-subtitles "$file"
done