Как я могу сохранить отредактированный текстовый файл, используя bash?

Это мой код:

Edit_Record () {

zenity --width=600 --height=300 --text-info --title="Records" --filename=$FILE --editable
    if [ "$?" = 0 ]; then
            kdialog --title "Saving the Data" --warningyesnocancel "Do you want to save the changes?"
            if  [ "$?" = 0 ]; then
            kdialog --msgbox "The changes have been added!"

            Home;

            elif [ "$?" = 1 ]; then
            kdialog --msgbox "No changes has been added!"
            Home;

            else
            Home;

            fi;

    else

    zenity --info --text "You chose to Cancel."
    exit
    fi;
}

Я не знаю, что поставить за "kdialog --msgbox " Изменения были добавлены!":(Помогите пожалуйста?

1 ответ

Решение

zenity --editable возвращает отредактированный текст в стандартный вывод. Вы можете сохранить его во временном файле путем перенаправления, и если пользователь хочет сохранить изменения, просто переместите временный файл поверх оригинала.

tmp=$(mktemp)
zenity --editable ... > $tmp

if ... ; then
    mv $FILE "$FILE"~
    mv $tmp "$FILE"
fi
Другие вопросы по тегам