Я очень новичок в сценариях bash в первую очередь. Я написал скрипт, который проверяет записи внутри каталога и печатает информацию о них. Если записи являются файлами, он печатает размер файла и, если есть каталоги, он печатает, сколько элементов в этих каталогах. Когда я запускаю скрипт к каталогу, он находится в скрипте и завершается успешно. Если я запускаю сценарий для другого каталога, я получаю сообщение об ошибке «Ожидается двоичный оператор». Это ожидать? Вот код:
#!/bin/bash
# Print the contents of a directory with details on files and directories
files=( $1* )
count=0
for entry in $1/*
do
if [ -d $entry ]
then
for f in $entry/*
do
let count=count+1
done
echo $entry ":" "This is a directory with $count files present."
let count=0
else [ -f $entry ]
echo $entry "This is a file of" $(wc -c <"$entry") "bytes."
fi
done
Я уверен, что этот код не идеален и, скорее всего, имеет более простой метод, поэтому я просто ищу несколько советов. Спасибо за любую помощь.
FurmanTheGerman