Было скучно просто сидеть в поезде и слушать аудиокниги, поэтому я стал читать скрипты которых полным полно в любом дистрибутиве и нашёл интересную функцию bash select
С помощью этой функции можно устраивать простые диалоги с пользователем и я набросал пример использования его. Мой скрипт имитирует поведение файлово менеджера, с помощью него можно перемещаться по дереву каталого, правда только в 1 сторону
- cat bin/lsdir.sh
- #!/usr/bin/env bash
- # интерактивный просмотр каталого
- # запускать вот так lsdir каталог
- # 2009.01.17, электропоезд киров-шахунья
- function lsdir {
- DIR=`echo "../"; find $1 -maxdepth 1 -type d`;# в переменную DIR заносит список каталого из указанного места, без вложений
- select s in $DIR; do # а вот тут в переменную s заносятся выбранные пользователем элементы списка
- lsdir $s; #продолжам просмотр каталог в выбранном каталоге
- done;
- }
- # вызов функции примера в цикле
- for s in $@; do
- lsdir $s
- done