Доброго времени суток!Есть такой скрипт (точнее часть скрипта:) ):
#!/bin/bash
echo "$1"
for file in $1
do
echo "$file"
done
exit 0Если в качестве параметра скрипту передать "*" то будет обработан только первый файл в каталоге и echo "$1" выводит имя только первого файла, хотя в терминале "echo *" выводит список всех файлов в каталоге. Как можно использовать звёздочку в качестве параметра скрипта, чтобы обрабатывались все файлы и при этом не экранировать звёздочку прямо в командной строке?
>[оверквотинг удален]
> echo "$file"
> done
>exit 0
>
>Если в качестве параметра скрипту передать "*" то будет обработан только первый
>файл в каталоге и echo "$1" выводит имя только первого файла,
>хотя в терминале "echo *" выводит список всех файлов в каталоге.
>Как можно использовать звёздочку в качестве параметра скрипта, чтобы обрабатывались все
>файлы и при этом не экранировать звёздочку прямо в командной строке?
>1) замени в скрипте $1 на $@
2) man bash
3) http://www.opennet.me/docs/HOWTO-RU/Bash-Prog-Intro.html