Hi, I'm trying to write a script to search through my computer and
find all .jpg files and put them all in a directory. So far I have
this:
Code:
for i in `find /home -name '*.jpg' ` ; do mv $i home/allen/Pictures/PicturesFound ; done
When I run it, I get this error (this is only part of it, it goes on
for a while)
Code:
mv: cannot stat `-': No such file or directory
mv: cannot stat `A': No such file or directory
mv: cannot stat `Decade': No such file or directory
mv: cannot stat `of': No such file or directory
mv: cannot stat `Hits': No such file or directory
mv: cannot stat `(1969-1979)/front.jpg': No such file or directory
mv: cannot stat `/home/allen/.local/share/Trash/files/2011/03/19/00.':
No such file or directory
mv: cannot stat `Protest': No such file or directory
mv: cannot stat `The': No such file or directory
mv: cannot stat `Hero': No such file or directory
mv: cannot stat `-': No such file or directory
mv: cannot stat `Scurrilous': No such file or directory
mv: cannot stat `2011': No such file or directory
Any Ideas what's wrong? I'm new to BASH, obviously. Please don't
criticize me, and try not to change my whole code, as I know there are
probably way better ways to get what I want accomplished, I just want
to get this to work. Thanks very much! hope to get a reply.
Last edited by Franklin52; 08-29-2011 at 04:49 AM..
Reason: Please use code tags for code and data samples, thank you
Unix shell doesn't work well with files with spaces with their names. Here you can read what's your problem and what you should do: BashPitfalls - Greg's Wiki
Btw, this site (their guide, faq and pitfalls) is the best place to learn bash.
Explanation:
the -prune strips out whatever has been found so far (ie it will filter the PicturesFound directory)
the -o is an OR operator that allows the next statement to work
-type f f is for files
-name *.jpg only jpgs
-exec runs a command
mv "{}" <directory> \; the {} is replaced with the file name found. The " allows for spaces. the \; ends the exec command.
You can run it with mv -i to be safe and confirm the mv before it does it just in case something goes crazy.
Hello.
I am searching file between dates and try to apply the comments from Chubler_XL in my thread : Linux find command : how to use multiple conditions
But i get a null result as i am expecting to find 32 files.
Setting my computer date to the date of the thread ( 30/05/2019 ) and... (4 Replies)
Hi Gurus,
I need a simple logic idea what can be done in the below shell script.
I written a script to do a automated maintenance work on every month of 15th and I have scheduled it through the crontab. I need to send an alert email to the user before 24 hrs of that maintenance script run.... (5 Replies)
Hi together,
unfortunately I am not a shell script guru - the following might touch
the depths of awk, substr, split, regexps, where I am still fighting with - but as always the boss needs a fast solution :-(
So: I have the following USER/PASSWORD-installation-config-file, from where I want to... (10 Replies)
Hello everyone...
I'm trying to find an interesting project to work on
for my master thesis. I like GNU/Linux C development
and BASH scripting. Please give me any idea that
flashes in your mind.
I thank you in advance... (3 Replies)
#!/bin/bash
timevar=`date +%F_”%H_%M”` #-- > Storing Date and Time in a Variable
get_contents=`cat urls.txt` #-- > Getting content of website from file. Note the file should not contain any http:// as its already been taken care of
######### Next Section Does all the processing #########
for i... (0 Replies)
I'm trying to print all files which have the file permission 775 and that is 1MB or greater in long format.
This is what I have:
find -L -perm 775 -size +1000k -print
when I run this script nothing appears in terminal. What am I doing wrong? (2 Replies)
Hello All,
I need a bash shell script to find out a day from the date.For example we give the date(20100227/YYYYMMDD) then we get the day 'Saturday'.
Thanks in advance,
Satheesh (5 Replies)
I'm trying to make a simple search script but cannot get it right. The script should search for keywords inside files. Then return the file paths in a variable. (Each file path separated with \n).
#!/bin/bash
SEARCHQUERY="searchword1 searchword2 searchword3";
for WORD in $SEARCHQUERY
do
... (6 Replies)
I'm at a total loss how to attack this problem.
I have a file that contains
ab
What I need to do is if
1)if the string "ab" doesn't contain a newline, I need to insert one back into the buffer.
2)If the file contains two consecutive blank lines, skip over it.
Here is what I started
... (5 Replies)