Нужно: с помощью утилиты dialog, на языке shell построить меню, которое работает с файловой системой и выполняет функции: удаление, создание,перемещение,переименование файла. Пытаюсь пока реализовать хотя бы одну из функций, но при выполнении команды, например копирования файла вылезает ошибка, что файла такого в каталоге не имеется. И показывается адрес этого файла, который я выбираю, и к этому адресу спереди приплюсованы еще какие-то странные символы типа: "/033[" и так далее, а потом адрес моего файла. Где-то цепляются эти символы. В чем моя ошибка? не так передаю адрес файла?#!/bin/bash DIALOG=${DIALOG=dialog} HOME=/home/fzo FILE=$HOME for n in .cshrc .profile .bashrc do if test -f $HOME/$n ; then FILE=$HOME/$n break fi done FILE=`$DIALOG --stdout --title "Please choose a file" --fselect ${FILE} 14 48` case $? in 0) tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$ trap "rm -f $tempfile" 0 1 2 5 15 $DIALOG --clear --title "File_system" \ --menu "Choose option:" 20 51 2 \ "Rename" "" \ "Delete" "" 2> $tempfile retval=$? choice=`cat $tempfile` if test [Rename=$tempfile] ; then tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$ trap "rm -f $tempfile" 0 1 2 5 15 $DIALOG --title "Ввод данных" --clear \ --inputbox "Input new filename:" 16 51 2> $tempfile retval=$? filnam=`cat $tempfile` cp -a $FILE $filnam fi ;; 1) echo "Cancel pressed." ;; 255) echo "Box closed.";; esac
|