Sponsored Content
Top Forums Shell Programming and Scripting Restoring a file to its original location Post 302774347 by tastybrownies on Friday 1st of March 2013 04:16:34 PM
Old 03-01-2013
Restoring a file to its original location

Hello everyone,

I am attempting to make a recycling bin type application in shell script (tcsh). I have the whole part of the application done where someone can recycle files from one location to the recycling bin (the lower half of the program), this is not a problem. However I wanted to make another option if the user typed in something like recycle -cleanup as argument 1 it would go into a loop to check each file currently in the recycling bin and ask the user what to do. If the user chooses d, it deletes it. If they choose s it skips it, and lastly if they choose r I want to restore it. This is where the problem lies.

I am very inexperienced with shell programming in general so I am not even sure if the way I'm doing the -cleanup thing is right. But, is there a way to know the original file location so I can just put the file back? First check that there is not a file with a duplicate name in the old directory, then if not move it back. As of now I have no clue how to do this and any help would greatly be appreciated!

Thank you! This is what I have so far:

Code:
#!/bin/tcsh -f

if ["$1" == "-cleanup" ] then

set FILES=/$HOME/.garbage/*
set userChoice = " "
foreach file ( $FILES )
  echo "Processing $file file..."
  # take action on each file. $f store current file name

  echo "$file delete/restore/skip? (d/r/s)"
  set userChoice = $<

  if userChoice == "d" then
    rm $file
    echo "$file deleted!"
  else if userChoice == "r" then
   #restore to previous spot
   echo "$file restored!"
  else if userChoice == "s" then
   # do nothing
  else
   echo "You entered an invalid choice"

  endif
 
end
else


set n = 1
set size = 0
mkdir -p ~/.garbage

while ($n <= $#argv)
 if ( -d $argv[$n] ) then
   echo "$argv[$n] is a directory and cannot be removed"
 else
    
      
     mv $argv[$n] ~/.garbage
     
     echo "The file moved to the garbage directory was: "$argv[$n] "\n"
     set size = `du ~/.garbage | cut -f1`
  
 endif 
@ n++
end

  echo "The garbage bin's size is:" $size " bytes."
endif

---------- Post updated at 04:16 PM ---------- Previous update was at 03:54 PM ----------
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Restoring a file from Tape

help please i have "inherited" a Sco Server (the administrator departed in a hurry...yes we are chasing him..) and haven't used Unix for 8 years. i have a file that i need to retrieve from a tape. i have been able to find the file on tape using the cpio -ivt command. however... the problem I... (3 Replies)
Discussion started by: mfischer
3 Replies

2. Solaris

Restoring TAR'd file to different location

Is it possible to restore a TAR'ed file off of a tape to a location other than the original location? If so, how? (The MAN pages give examples of how to restore only to the originating location.) Thanks!! (1 Reply)
Discussion started by: FredSmith
1 Replies

3. Shell Programming and Scripting

Restoring a file

I'm new to Unix and have just wrote a little program to move files to a recycle bin (a Directory i created) and restore them. The problem is that i need to keep track of all the full filenames so that i can restore them to the right place. I did this by creating a file called delreg and putting the... (4 Replies)
Discussion started by: zoolz
4 Replies

4. Shell Programming and Scripting

Put one string from one location to another location in a file

Hi Everyone, I have 1.txt here a b c' funny"yes"; d e The finally output is: here a b c d e' funny"yes"; (1 Reply)
Discussion started by: jimmy_y
1 Replies

5. Shell Programming and Scripting

restoring file to its default location...

Hello everyone, I am new to unix shell. I have a file called Path.txt....and i have data in that as 1 abhi 2 avi 3 ash so on..... 1 ,2 ,3 is the... (2 Replies)
Discussion started by: AbhijitIT
2 Replies

6. Shell Programming and Scripting

Search Files from Array and link to original location in Perl

Hello, Question is related to Perl: I need to search few of the files from the array of file names. And after grepping the file names from an array I need to link these files to original location. The original location in this case is ref_path as input from the user. ##$ref_path is... (3 Replies)
Discussion started by: aarora1
3 Replies

7. Shell Programming and Scripting

File created in a different location instead of desired location on using crontab

Hi, I am logging to a linux server through a user "user1" in /home directory. There is a script in a directory in 'root' for which all permissions are available including the directory. This script when executed creates a file in the directory. When the script is added to crontab, on... (1 Reply)
Discussion started by: archana.n
1 Replies

8. Shell Programming and Scripting

How to copy a file from one location to another location?

I have file file1.txt in location 'loc1'. Now i want a copy of this file in location 'loc2' with a new file called test.txt. Please help me how to do this in shell script. (1 Reply)
Discussion started by: vel4ever
1 Replies

9. UNIX for Dummies Questions & Answers

how to copy files and record original file location?

:EDIT: I think my post name should have been labeled: how to copy files and record original file location. not "retain". Hello, this is my first post! I searched the forums a lot before posting, but was unable to answer my question. Here's my problem: There are several hundred text files... (4 Replies)
Discussion started by: willie8605
4 Replies

10. Shell Programming and Scripting

How to find a existing file location and directory location in Solaris box?

Hi This is my third past and very impressed with previous post replies Hoping the same for below query How to find a existing file location and directory location in solaris box (1 Reply)
Discussion started by: buzzme
1 Replies
gnome-cleanup(1)						   User Commands						  gnome-cleanup(1)

NAME
gnome-cleanup - cleans GNOME user preferences SYNOPSIS
gnome-cleanup DESCRIPTION
gnome-cleanup erases all GNOME user preferences, returning the user to the default look and feel. This can be used to undo an undesired preference setting, or to correct the desktop if the preferences become corrupt. The GNOME preference files are automatically recreated the next time the user logs into a GNOME session. gnome-cleanup displays all preference files that it will delete before erasing any files, and prompts the user to confirm that they would like to erase these files. Files are deleted only after receiving a positive confirmation from the user. gnome-cleanup cannot be run while logged into a GNOME session. Users should run this program when logged into another session, for exam- ple, the Failsafe session. If the user tries to run this program while logged into GNOME, an error message is displayed. OPTIONS
None. EXAMPLES
Example 1: Deleting all GNOME user preferences example% gnome-cleanup After displaying a list of preference files that will be deleted, the following question is displayed: Do you wish to remove these files (Y/N) The files are deleted only if the user provides a positive response. EXIT STATUS
The following exit values are returned: 0 Application exited successfully >0 Application exited with failure FILES
The following files are used by this application: /usr/bin/gnome-cleanup Executable for GNOME cleanup. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWgnome-panel | +-----------------------------+-----------------------------+ |Interface stability |External | +-----------------------------+-----------------------------+ SEE ALSO
remove-gnome(1) NOTES
Written by Brian Cameron, Sun Microsystems Inc., 2003. SunOS 5.10 11 Jan 2003 gnome-cleanup(1)
All times are GMT -4. The time now is 04:24 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy