Файлы и каталоги
Работа с файлами и каталогами в bash опирается на механизм перенаправления и команды Unix. Проверку состояния файлов удобно выполнять с помощью команды test. Для чтения данных из файла достаточно направить его содержимое в стандартный поток ввода:
Bash> intuit.cgi < intuit.txt
Можно для этих же целей построить конвейер:
Bash> cat intuit.txt | intuit.cgi
В данном случае команда cat читает данные из файла и передает их на поток стандартного ввода скрипта.
Для создания файлов в bash можно применять функцию копирования из пустого файла в нормальный файл:
bash>cp /dev/null intuit.txt
Для прохода по дереву каталогов используют команду cd, а получить список файлов с их атрибутами можно при помощи команды ls:
#!/usr/freeware/bin/bash echo Content-type: text/html echo echo '<HTML><HEAD></HEAD><BODY>' echo '<UL>' ls | while read x do if test -f $x; then echo '<LI><A HREF=./'$x'>'$x'</A>'; fi done echo '</UL>' echo '</BODY></HTML>'
В результате выполнения этого скрипта в HTML-документ будет вставлен фрагмент из отчета команды ls. При этом будут отображаться только регулярные (обыкновенные) файлы. Каталоги и специальные файлы в список файлов каталога не попадут.
Удалить файл можно при помощи команды rm "имя_файла", переименовать — mv "имя_старое" "имя_новое" и т.п. Все это типовые команды Unix.