For loop with wildcards


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers For loop with wildcards
# 1  
Old 10-08-2011
For loop with wildcards

Hi,

I've got a ksh for loop with wildcards specified, and I want the wildcards to be preserved when inside the loop. Instead, it is expanding the wilcards and identifying filenames in the current directory

Code:
#!/usr/bin/ksh
list="a* b*"
for i in ${list}
do
  echo 'Loop value =' ${i}
done

with these files in the directory
Code:
/home/temp > ls -1 a* b*
a1.txt
a2.txt
b1.txt

I get this output
Code:
Loop value = a1.txt
Loop value = a2.txt
Loop value = b1.txt

How can I stop identifying the files and return the original list values including the *'s, i.e.
Loop value = a*
Loop value = b*

Thanks in advance
N

Last edited by nim; 10-08-2011 at 11:30 AM..
# 2  
Old 10-08-2011
If you are using bash , You can prevent this filename expansion by turning off globbing set -o noglob.
let me check for ksh and I'll post here again when i put my hands on something.
This User Gave Thanks to h@foorsa.biz For This Post:
# 3  
Old 10-09-2011
Bingo.
I thought I'd tried the noglob function without any joy, but that appears to work fine for ksh in this scenario.
Many thanks for your help.
N
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Wildcards and exceptions

Hello: I have a very basic question. I'd like to select all files except for one file. For example, say I want to move all of the files in my current directory to a subdirectory called archive, I would use mv ./* archive/ But what if I want to move all files except for README.txt? Is there an... (19 Replies)
Discussion started by: Danny.Boy
19 Replies

2. UNIX for Advanced & Expert Users

ln -s accept wildcards?

Does ln -s accept wildcards? It doesn't seem like it is working when I use wildcards. (9 Replies)
Discussion started by: cokedude
9 Replies

3. UNIX for Advanced & Expert Users

Wildcards

These 2 websites do a GREAT job of explaining different types of wildcards. I learned about the categories of characters which I never knew about at all. GNU/Linux Command-Line Tools Guide - Wildcards GREP (1 Reply)
Discussion started by: cokedude
1 Replies

4. UNIX for Dummies Questions & Answers

wildcards NOT

Hi All Please excuse another straightforward question. When creating a tar archive from a directory I am attempting to use wildcards to eliminate certain filetypes (otherwise the archive gets too large). So I am looking for something along these lines. tar -cf archive.tar * <minus all *.rst... (5 Replies)
Discussion started by: C3000
5 Replies

5. UNIX for Dummies Questions & Answers

ls with wildcards

ok, I'm trying to write a script file that lists files with specific elements in the name into a txt file, it looks like this ls s*.dat > file_names.txt can't figure out whats wrong with that line, any ideas? thanks in advance (10 Replies)
Discussion started by: benu302000
10 Replies

6. UNIX for Dummies Questions & Answers

wildcards

when writing a shell script (bourne) and using a unix command like 'ls' is there anything special you need to do to use a wildcard (like *)? (3 Replies)
Discussion started by: benu302000
3 Replies

7. UNIX for Dummies Questions & Answers

grep and wildcards

Hi guys, a small problem today, I'm grepping a log file containing lines like this below: Mar 09 16:04:00 blabla Mar 09 16:04:02 blabla Mar 09 16:04:05 blabla Mar 09 16:04:15 blabla Mar 09 16:05:06 blabla Mar 09 16:05:23 blabla Mar 09 16:05:25 blabla ... in this file I'm grepping... (5 Replies)
Discussion started by: Lomic
5 Replies

8. UNIX for Dummies Questions & Answers

Wildcards and quoting

Hi All In a script, I want a user to enter 4 characters, these can be a mix of letters (uppercase and lowercase) and numbers. In this example $var represents what the user has entered. eg $var can be A9xZ, 3DDL, bbHp .........etc I need to check that the user has only entered characters... (2 Replies)
Discussion started by: Bab00shka
2 Replies

9. UNIX for Dummies Questions & Answers

Wildcards in VI

I'm trying to delete lines from a large text file using VI. Every line that I am wanting to delete start with 'S' - all others do not. (A list of users) I've tried using * but doesn't seem to like it...any ideas... Doesn't have to be VI - but I'm better with VI than sed/awk. (8 Replies)
Discussion started by: peter.herlihy
8 Replies

10. Programming

Makefile wildcards

Using a makefile I want to compile all .c files in the current directory without specifying them directly and then link their associated .o files into a library. How do I do this ? Thanks. (1 Reply)
Discussion started by: rcscott
1 Replies
Login or Register to Ask a Question