Sponsored Content
Full Discussion: foreach loop problem
Top Forums Shell Programming and Scripting foreach loop problem Post 302596164 by handsonzhao on Monday 6th of February 2012 06:36:51 PM
Old 02-06-2012
foreach loop problem

Dear all,

I wrote a script to download files and move files in directories according to their name.

Now here is the problem:

Both p101 and p360 data download successfully, but when I move them according to the year and month, only p101 data can be placed at the right location, p360, however, only move the data that in Dec.

Second table is the result when I run this script in terminal.

Thank you so much!

 
#!/bin/csh
set directory1 = "/data/htdocs/field_photos/files/by_site"
echo $directory1
set station = (P101 P360)
set year = (2011 2012)
set month = (01 02 03 04 05 06 07 08 09 10 11 12)
foreach year($year)
wget -P $directory1 -nc ftp://brick.unavco.org/in/hodge/P101$year\*.jpg
wget -P $directory1 -nc ftp://brick.unavco.org/in/hodge/P360$year\*.jpg
end
foreach station($station)
foreach year($year)
foreach month($month)
echo $directory1/$station$year\*.jpg $directory1/$station/webcam/$year/$month
chmod g+rw $directory1/$station$year$month*.jpg
mv $directory1/$station$year$month*.jpg $directory1/$station/webcam/$year/$month
end
end
end

 
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/01
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/02
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/03
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/04
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/05
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/06
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/07
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/08
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/09
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/10
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/11
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P1012012*.jpg /data/htdocs/field_photos/files/by_site/P101/webcam/2012/12
chmod: No match.
mv: No match.
/data/htdocs/field_photos/files/by_site/P3602012*.jpg /data/htdocs/field_photos/files/by_site/P360/webcam/2012/12
chmod: No match.
mv: No match.

---------- Post updated at 04:36 PM ---------- Previous update was at 04:35 PM ----------

For the second table, pay more attention to the last few lines.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

foreach loop question

Hello, I am new at this forum so please bare with me on this. Within a given directory, I have a list of files in which in each file, I would like to do a substitution. I would like to substitute the string mlcl to mll in each file using the foreach command. I dont quite get how to do that. If... (7 Replies)
Discussion started by: clipski
7 Replies

2. Shell Programming and Scripting

Foreach loop

What am I doing wrong with this foreach loop? foreach var ($argv) @sum = $sum + $var (4 Replies)
Discussion started by: haze21
4 Replies

3. Shell Programming and Scripting

foreach loop

Hi Guys, I have a loop which uses a wildcard i.e. foreach f (*) but when I execute the tcsh file in unix then it gives me an error ->>>>>>>foreach: words not parenthesized<<<<<<<<<<- Any help. (1 Reply)
Discussion started by: abch624
1 Replies

4. Shell Programming and Scripting

foreach loop + 2 variables

In a foreach loop, is it possible for the loop to go through 2 arguments instead of one i.e. instead of foreach i (do stuff for i), we have foreach i j(do stuff for i; do stuff for j) I am working under BASH and TCSH shell environments cheers (3 Replies)
Discussion started by: JamesGoh
3 Replies

5. Shell Programming and Scripting

foreach loop

Hi everyone Does anyone know what is wrong with this script. i keep getting errors foreach filename (`cat testing1`) set string=$filename set depth=`echo "$string" echo $depth end the error is the following testing: line 1: syntax error near unexpected token `(' testing: line 1:... (3 Replies)
Discussion started by: ROOZ
3 Replies

6. UNIX for Advanced & Expert Users

Problem with foreach loop

Hi All, Is there any problem with the below 'foreach' loop? foreach risk_factor ($(cat "$rf_list")) where "rf_list=$SCRIPT/Utility/rflist.txt " I'm wondering, it is throwing below error message: syntax error at line 34: `(' unexpected Any idea/suggestions ? Thanks in advance /... (7 Replies)
Discussion started by: ganapati
7 Replies

7. Shell Programming and Scripting

Using sed with a foreach loop

So I am back again beating my head against the wall with a shell script and getting a headache! I want to change each year in a file (1980, 1981, 1982, 1983, etc.) to the same year followed by a tab. The input is "blah blah (1980) blah blah". I want to get "blah blah (1980 ) blah blah".... (2 Replies)
Discussion started by: Peggy White
2 Replies

8. UNIX for Dummies Questions & Answers

Using the Foreach loop, Needing help

I am trying to make a script for my Counter-Strike: Source servers. What i am wanting it to do is for it to restart each server, the only way i can think of doing this in through for each. Years what i have at the moment. server_start() { START=`ps x | grep SCREEN | grep $SRV | cut -d '?' -f... (5 Replies)
Discussion started by: grahamn95
5 Replies

9. UNIX for Dummies Questions & Answers

foreach loop in csh

Hi everyone I'm new to unix and encountered a small problem i couldnt find out a reason why it doesn't work..please help.. in my csh script when i tried to use the foreach loop like this: foreach x ( ls ) echo $x end when i tried to run it, it printed out 'ls' to the std out instead of... (3 Replies)
Discussion started by: ymc1g11
3 Replies

10. Shell Programming and Scripting

Foreach loop with two variables

I need to put together a script that will take the contents of two different files (database name and database owner) and put them in two variables within a line: foreach x (`cat /local/hd3/dba/tools/build_db_scripts/dbs`) foreach z (`cat /local/hd3/dba/tools/build_db_scripts/dbas`)... (6 Replies)
Discussion started by: deneuve01
6 Replies
All times are GMT -4. The time now is 10:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy