Update functions.c

This commit is contained in:
2025-10-11 11:43:06 +03:00
parent c0d001177c
commit 7e27710cb1

View File

@@ -13,10 +13,7 @@
<link rel="alternate" type="application/atom+xml" title="" href="/131/lab0_letsbegin.atom">
<link rel="alternate" type="application/rss+xml" title="" href="/131/lab0_letsbegin.rss">
<link rel="icon" href="/assets/img/favicon.svg" type="image/svg+xml">
<link rel="alternate icon" href="/assets/img/favicon.png" type="image/png">
<script>
<link rel="icon" href="/assets/img/favicon.svg" type="image/svg+xml
window.addEventListener('error', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
window.addEventListener('unhandledrejection', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
@@ -774,3 +771,53 @@ myatoi(&#34;-105&#34;) == -105
</body>
</html>
#!/bin/bash
# Функция для подсчета строк, слов и байт в файле
count_file_stats() {
local file="$1"
# Проверяем существование файла
if [ ! -e "$file" ]; then
echo "Ошибка: файл '$file' не существует" >&2
return 1
fi
# Проверяем, является ли файл обычным файлом
if [ ! -f "$file" ]; then
echo "Ошибка: '$file' не является обычным файлом" >&2
return 1
fi
# Проверяем возможность чтения файла
if [ ! -r "$file" ]; then
echo "Ошибка: нет прав на чтение файла '$file'" >&2
return 1
fi
# Подсчет строк, слов и байт
local lines=$(wc -l < "$file")
local words=$(wc -w < "$file")
local bytes=$(wc -c < "$file")
# Вывод результатов
echo -e "${lines}\t${words}\t${bytes}\t${file}"
}
# Основная программа
main() {
# Проверка наличия аргументов
if [ $# -eq 0 ]; then
echo "Использование: $0 файл1 [файл2 ...]" >&2
echo "Пример: $0 ./test/wiki_ci ./test/nullfile" >&2
exit 1
fi
# Обработка каждого файла
for file in "$@"; do
count_file_stats "$file"
done
}
# Запуск основной функции с переданными аргументами
main "$@"