| | |
After my script does ftp, it can't delete the files - URGENT
![]() |
•
•
Join Date: Jul 2006
Posts: 19
Reputation:
Solved Threads: 0
Hi,
I have a script which uploads files successfully to another server via ftp. But after the files are uploaded, I want them to be deleted (removed), but it doesn't seem to work. I would appreciate if someone could help me out with this. How can I modify my script so that the uploaded files will be deleted after the ftp session?
Here's the script:
#!/bin/sh
cd /opt.../logs
Server="xx.xx.xx.xx"
Username="sonya"
Password="s2525"
DstDir="/files/son"
ftp -n $Server <<End-of-Session
user $Username $Password
binary
cd $DstDir
prompt
mput "go*"
bye
rm go*
End-of-session
exit 0
Thanks a lot,
Sonya
I have a script which uploads files successfully to another server via ftp. But after the files are uploaded, I want them to be deleted (removed), but it doesn't seem to work. I would appreciate if someone could help me out with this. How can I modify my script so that the uploaded files will be deleted after the ftp session?
Here's the script:
#!/bin/sh
cd /opt.../logs
Server="xx.xx.xx.xx"
Username="sonya"
Password="s2525"
DstDir="/files/son"
ftp -n $Server <<End-of-Session
user $Username $Password
binary
cd $DstDir
prompt
mput "go*"
bye
rm go*
End-of-session
exit 0
Thanks a lot,
Sonya
change
to
Because the rm go* is being fed to the ftp command (everything up to "End-of-session" is being fed to the ftp command), but the ftp session ended at "bye", and if it hadn't you would have removed the files on the remote machine (if anywhere). That's why you move that command down after the "End-of-session" line.
Shell Scripting Syntax (Toggle Plain Text)
mput "go*" bye rm go* End-of-session exit 0
Shell Scripting Syntax (Toggle Plain Text)
mput "go*" bye End-of-session rm go* exit 0
Because the rm go* is being fed to the ftp command (everything up to "End-of-session" is being fed to the ftp command), but the ftp session ended at "bye", and if it hadn't you would have removed the files on the remote machine (if anywhere). That's why you move that command down after the "End-of-session" line.
Java Programmer and Sun Systems Administrator
----------------------------------------------
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
--Brian Kernighan
----------------------------------------------
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
--Brian Kernighan
•
•
Join Date: Jul 2006
Posts: 19
Reputation:
Solved Threads: 0
Hi,
I made a mistake by including the rm before the ftp session just to check if my file can be deleted, so i thought your solution works. But when i tried your solution, i still wasn't able to delete the file. I included the path as well, still couldn't delete. Sorry for the mistake... but i really can't figure out why it won't be deleted..??
Thanks,
Sonya
I made a mistake by including the rm before the ftp session just to check if my file can be deleted, so i thought your solution works. But when i tried your solution, i still wasn't able to delete the file. I included the path as well, still couldn't delete. Sorry for the mistake... but i really can't figure out why it won't be deleted..??
Thanks,
Sonya
I just noticed something, you use
Those two tags don't match. That "End-of-(S/s)ession tag needs to be written exactly the same in both places.
Shell Scripting Syntax (Toggle Plain Text)
ftp -n $Server <<End-of-Session ...... End-of-session
Those two tags don't match. That "End-of-(S/s)ession tag needs to be written exactly the same in both places.
Java Programmer and Sun Systems Administrator
----------------------------------------------
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
--Brian Kernighan
----------------------------------------------
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
--Brian Kernighan
•
•
Join Date: Oct 2007
Posts: 399
Reputation:
Solved Threads: 47
Just a quick thought: If you use a path, also, it's best to make it absolute (/opt/whatever/go) rather than relative (../go) otherwise changes in your script could change where you try to delete the files from; assuming it's a constant.
, Mike
, Mike
Linux and Unix Tips, Tricks and Individual Advice - The Linux and Unix Menagerie!
------------------------------------------------------------------------
The greatest viral marketing idea of all time, get your copy of this Free Report now!
------------------------------------------------------------------------
The greatest viral marketing idea of all time, get your copy of this Free Report now!
![]() |
Similar Threads
- !cannot delete files! (Windows NT / 2000 / XP)
- Delete Files when the Recycle Bin is Hidden (Windows tips 'n' tweaks)
- For Pay Shell Script - Zip / FTP / Delete transactional files (Shell Scripting)
- c++ or shell script to delete some files (C++)
- How to delete files in UNIX using shell script (Shell Scripting)
- cannot delete files (Windows 95 / 98 / Me)
- Delete files on restart (Windows NT / 2000 / XP)
Other Threads in the Shell Scripting Forum
- Previous Thread: editors and tutorials
- Next Thread: Replace
| Thread Tools | Search this Thread |






