Ignoring mv commands "cannot stat" error ?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Ignoring mv commands "cannot stat" error ?
# 1  
Old 05-08-2011
Ignoring mv commands "cannot stat" error ?

So, my third thread here ^^ and still asking questions.

Thanks for you patience and help, I really appreciated it Smilie

I currently use a shell script to move folders of songs from one to another location on my harddrive.
I use something like this:

Code:
sudo mv /var/mobile/Media/"My Music"/"Vasco Rossi" /var/mobile/Media/0tempmusic/"Vasco Rossi"
sudo mv /var/mobile/Media/"My Music"/"Yui" /var/mobile/Media/0tempmusic/"Yui"
sudo mv /var/mobile/Media/"My Music"/"ZARD" /var/mobile/Media/0tempmusic/"ZARD"
sudo mv /var/mobile/Media/"My Music"/"8 Mile[Soundtrack][2002][MP3@320kbps]-FLAWL3SS" /var/mobile/Media/0tempmusic/"8 Mile[Soundtrack][2002][MP3@320kbps]-FLAWL3SS"
sudo mv /var/mobile/Media/"My Music"/"Berlin Calling OST" /var/mobile/Media/0tempmusic/"Berlin Calling OST"
sudo mv /var/mobile/Media/"My Music"/"Hangover OST" /var/mobile/Media/0tempmusic/"Hangover OST"
sudo mv /var/mobile/Media/"My Music"/"Inception OST - 2010 - (Hans Zimmer)" /var/mobile/Media/0tempmusic/"Inception OST - 2010 - (Hans Zimmer)"

The problem however is that I don't have all the folders in the place the script works with.
This naturally results in cannot stat errors.

What I would be interested in now is a way to have the script just ignore any "cannot stat error message".

I know that using a "if-else" would solve the job, but since the code up there is only a small portion of the real thing it simply would be alot of work and writing (or copy and paste if you want) to do.

I hope there is something the mv command has that will help me with that.

As always:

Thanks in advance you guys are awesome Smilie
# 2  
Old 05-08-2011
You can shut up the error messages by sending them to the black hole sink /dev/null:
Code:
mv src dest 2> /dev/null

This User Gave Thanks to mirni For This Post:
# 3  
Old 05-08-2011
Awesome ! Just what I needed thanks for that Smilie

On a side not: is sending the errormessages to the black hole known as "/dev/null" the only ways besides else if to do this ?
Just curious xD
# 4  
Old 05-08-2011
Well, the message you're getting is printed on stderr (as opposed to stdout, which is where normal output goes). If you want to just get rid of that stream, this is the easiest way.

Many times it can be useful to ignore all output and just check the return value of command to see whether it exited normally or not:
Code:
grep string someFile &>/dev/null 
case $? in 
  0) echo "found it";;
  1) echo "not found, someFile exists";;
  2) echo "someFile does not exist";;
esac

Redirection &> will redirect both stdout and stderr.

You can specify where does this message go, by manipulating the stderr stream. Stderr is associated by a file descriptor 2 (/dev/fd/2 in bash).

Other than redirecting it to /dev/null, you could redirect it to a file, to capture the stderr, like
Code:
command 2> myErrs.log

or '2>>' to append.

You can also process the stderr by piping it to another command. Reply by alister in this post explains this and might be of interest to you:
https://www.unix.com/shell-programmin...r-process.html

Other than processing what goes OUT of stderr, you might wanna write INTO stderr. Like this:
Code:
$echo "This goes to stderr" >&2

good luck!
mirni

Last edited by mirni; 05-09-2011 at 04:50 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Extract delta records using with "comm" and "sort" commands combination

Hi All, I have 2 pipe delimited files viz., file_old and file_new. I'm trying to compare these 2 files, and extract all the different rows between them into a new_file. comm -3 < sort file_old < sort file_new > new_file I am getting the below error: -ksh: sort: cannot open But if I do... (7 Replies)
Discussion started by: njny
7 Replies

2. UNIX for Dummies Questions & Answers

Is "stat: illegal option -- -" an issue with hyphenated filename or flag problem?

Hi. I'm trying to install VMWare Workstation to run a virtual machine on my Mac OS, but running the bundle from bash(xterm) sh VMware-workstation-Full-11.0.0-2305329.x86_64.bundle (as suggested in install guide) comes up with error:stat: illegal option -- - usage: stat Digging... (5 Replies)
Discussion started by: defeated
5 Replies

3. AIX

Equalent of Linux "stat" in AIX

i would like to know the equivalent of stat -c %Y <file> command in AIX. i tried "istat" but its not giving the epoch time and also tried with perl perl -le'printf "%o", 07777 & (stat) for @ARGV' <file> it not also provding the timing . ... (3 Replies)
Discussion started by: expert
3 Replies

4. Shell Programming and Scripting

Intermittent "cp: cannot stat" error with nested loop

I have a bash script that has been running (on SUSE 9.3) dozens of times over the past couple of years without error. Recently it has been hitting intermittent “cp: cannot stat FILE: No such file or directory” errors. The script has nested loops that continuously process files in a... (2 Replies)
Discussion started by: jcart
2 Replies

5. Red Hat

files having Script which works behind "who" & "w" commands

Dear All, plz print the path of files which have the script of "who" & "w" commands. thnx in advance. (6 Replies)
Discussion started by: saqlain.bashir
6 Replies

6. Solaris

Relation btw commands, "man" and "more" ???

Hi guys, Hope u r doing find. I have this query. When we check the manual pages for a certain command, say man cat we see the manual page with more What is UNIX really doing here, I mean why not less command instead of more command. And can we have UNIX display the manual pages with less command... (2 Replies)
Discussion started by: gabam
2 Replies

7. Solaris

How to resolve error "INIT: Cannot stat /etc/inittab, errno: 2"

Hi All, I am getting an error message when I execute command “zlogin -C sunsrv4z5” on my root server. INIT: Cannot stat /etc/inittab, errno: 2 INIT: Cannot stat /etc/inittab, errno: 2 As per my analysis it seems that some files inside /etc folder are deleted. This server was... (14 Replies)
Discussion started by: surbhit4u
14 Replies

8. Shell Programming and Scripting

Unix commands delete all files starting with "X" except "X" itself. HELP!!!!?

im a new student in programming and im stuck on this question so please please HELP ME. thanks. the question is this: enter a command to delete all files that have filenames starting with labtest, except labtest itself (delete all files startign with 'labtest' followed by one or more... (2 Replies)
Discussion started by: soccerball
2 Replies

9. UNIX for Dummies Questions & Answers

what is a "find stat() error"

I'm searching for an oracle emtab file. I do a find / -name emtab -print and the first result gives me find: stat() error /apps/tomcat/jakarta-tomcat-5.5.9/bin/console.txt: I/O error Can someone explain what this error means? thanks, (2 Replies)
Discussion started by: orahi001
2 Replies

10. Shell Programming and Scripting

"read" command ignoring leading spaces

I have to read a file line by line, change it and then update the file. Problem is, when i read the file, "read" command ignores leading spaces. The file is a script which is indented in many places for clarity. How to i make "read" command read leading spaces as well. (3 Replies)
Discussion started by: vickylife
3 Replies
Login or Register to Ask a Question