Shell Script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell Script
# 1  
Old 06-04-2011
Shell Script

Hi everyone. I'm new and was looking for some help?

I need to create a shell script that has a menu and offers the following
back up (Where the user can specify just where they wish it to go)
restore (user can choose previous backup that they want to restore)

I need to insure the backups have the date of the backup in them. I also need to store the log files generated by these files in an appropriate as well as generate them onto the screen for the user to see. The script I want to create has to be able to tell the user what's going on at each stage, before asking the user if they want to quit or backup/restore again.

I'm in year five (Although this problem has nothing to do with school it is part of a work placement I am undertaking where they have asked me to do this) I am merely stating that I did not learn any of this in school but I think the work placement I am on is under the impression that I did and I don't want to make the school out to be liars.

I have created the menu with the users choice the part that I am having a problem with is the part where the users have to specify where they want their backup to go or where they want to restore it from and with not getting this bit done I am also having problems with generating the date for them and the log files.

The company have asked me to do this so they can implement for a few of their users, such as the work placement students. If you can help thank you.
# 2  
Old 06-04-2011
Hi,

Can you post your code, so that we can help from your code.
# 3  
Old 06-04-2011
Code:
while true
do
clear
## Menu
printf "Choose an option
	a) Backup
	b) Restore
	\n"
read ANSWER
	case $ANSWER in
 
	a) tar cf home.tar 
	b) tar xf home.tar

I don't have the exact code on me as I'm building it on one of the computers in the company and didn't bring it home with me cause I don't have the operating system. But the code above is basically the code I was using and it was doing the backup/restore but wouldn't let me choose where to restore or backup to.

I can get the code to run and back up but the problem I can't seem to get around is I have to backup the folders where the person using the program specifies, that is the part I'm having trouble with. Also the other part that isn't working for me is the part where I show how the backup is doing and where it is going with the log files it generates.
# 4  
Old 06-04-2011
One query here. When you say backup , what do you mean exactly ? Seeing your code, you are taking a backup of your home directory . But we need to know what back up you mean.

There also a question that, when user prefers to restore, you may have multiple old versions of backup to restore. I think you need to add the provision to choose which version user wants to restore unless you keep only one version of backup.
# 5  
Old 06-04-2011
This is not the complete one.. modify according to your requirement

Code:
while true
do
    echo "Choose an option"
    echo "1. Backup"
    echo "2. Restore"
    echo -en "\nEnter your choice : "
    read choice
    
    case $choice in 
        
        1)     echo -n "Enter the backup filename: "
            read filename
            echo -n "Enter the Directory Name : "
            read dir_name
            mv $filename $dir_name
            echo "$filename moved successfully to $dir_name"

        2)    echo -n "Enter the filename to restore : "
            read filename
            echo -n "Enter the destination (directory name) : "
            read dir_name
            mv $filename $dir_name

        *)    echo "Choose the Correct choice (1/2)"
    esac
done

# 6  
Old 06-04-2011
You can check

https://www.unix.com/shell-programmin...menu-bash.html

for some pointers on the menu part.

This https://www.unix.com/shell-programmin...le-script.html has good pointers for backuping files. If you like it to be simple just use

For creating( -v for extra info you can skip it):


Code:
tar -czvf /home/$(whoami).$(date +%Y%m%d)-backup.tar.gz /home/$(whoami)


And for restore:

Code:
tar -xzvf /home/$(whoami).$(date +%Y%m%d)-backup.tar.gz

You can also ask the user for the date of the backup needing restore in the above format and use it in your script. It is always good idea to store backups at least on different disk, ideally on offsite storage.

p.s. for easier menu generation you can use pdmenu - http://kitenet.net/~joey/code/pdmenu/

Last edited by click; 06-04-2011 at 07:56 AM..
# 7  
Old 06-04-2011
Hey, thank you for all the help. I got the menu part working fine and making the choice and I could backup it was just asking the user where they wanted to backup that had me confused.

If I wanted to show the user the log files generated by the backup whilst it's being backed up how would I do that? And when I say backup, I just mean when a user trying to back up a file or folder.

Jess
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shell script newbie- how to generate service log from shell script

Hi, I am totally a newbie to any programming languages and I just started an entry level job in an IT company. One of my recent tasks is to create a script that is able to show the log file of linux service (i.e. ntpd service) lets say, if I run my script ./test.sh, the output should be... (3 Replies)
Discussion started by: xiaogeji
3 Replies

2. Shell Programming and Scripting

Pass C shell array to another C shell script(csh) and shell(sh)

Dear Friends, Please help me on this my script name is send.csh In this i have written the statement like this set args = ( city state country price ) I want to pass this array to another c shell called receiver.csh. and i want to use it in this c shell or how to pass to... (2 Replies)
Discussion started by: SA_Palani
2 Replies

3. Shell Programming and Scripting

How to write config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

4. UNIX for Dummies Questions & Answers

How to write Config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

5. Shell Programming and Scripting

Unable to pass shell script variable to awk command in same shell script

I have a shell script (.sh) and I want to pass a parameter value to the awk command but I am getting exception, please assist. diff=$1$2.diff id=$2 new=new_$diff echo "My id is $1" echo "I want to sync for user account $id" ##awk command I am using is as below cat $diff | awk... (2 Replies)
Discussion started by: Ashunayak
2 Replies

6. Shell Programming and Scripting

Correct shell script to Call One shell script from another shell script

Hi All, I have new for shell scripting. Problem : I have one scrip at serv1 and path of server is /apps/dev/provimage/scripts and script name:extract_ancillary.bat. I need to call this script at server2(my working server) and execute at server2 . Please let me know how to build the... (5 Replies)
Discussion started by: Vineeta Nigam
5 Replies

7. Shell Programming and Scripting

call another shell script and pass parameters to that shell script

Hi, I basically have 2 shell scripts. One is a shell script will get the variable value from the user. The variable is nothing but the IP of the remote system. Another shell script is a script that does the job of connecting to the remote system using ssh. This uses a expect utility in turn. ... (2 Replies)
Discussion started by: sunrexstar
2 Replies

8. Shell Programming and Scripting

How to use ssh execute other shell script on other host (shell script include nohup)?

i want use ssh on the host01 to execute autoexec.sh on the host02 like following : host01> ssh host02 autoexec.sh autoexec.sh include nohup command like follwing : nohup /home/jack/deletedata.sh & after i execute ssh host02 autoexec.sh one the host01. i can't found deletedata.sh... (1 Reply)
Discussion started by: orablue
1 Replies

9. Shell Programming and Scripting

invoking a shell script inside cgi shell script

Hi, I have an HTML form through which I get some text as input. i need to run a shell script say script.sh inside a perl-cgi script named main_cgi.sh on the form input. I want to write the contents of the form in a file and then perform some command line operations like grep, cat on the text... (2 Replies)
Discussion started by: smriti_shridhar
2 Replies

10. Shell Programming and Scripting

How to Run a shell script from Perl script in Parent shell?

Hi Perl/UNIX experts, I have a problem in running a shell script from my perl script (auto.pl). I run the perl script using perl auto.pl from the shell prompt The shell script picks the files in "input" folder and procesess it. The shell script blue.sh has this code. export... (16 Replies)
Discussion started by: hifake
16 Replies
Login or Register to Ask a Question