Visit Our UNIX and Linux User Community


for statement


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers for statement
# 1  
Old 09-09-2009
for statement

removed the link due to some issues and i got the information i needed

Last edited by Amit Sura; 09-11-2009 at 02:43 PM..
# 2  
Old 09-09-2009
I believe the issue is the "$i:" is not being substituted correctly. You may try "${i}:"
# 3  
Old 09-09-2009
have you tried doing the loop with just echoing $i? Is it possible that one of the results contains a character that is throwing off the second command that references $i?

Just throwing a swag out there.

PS: do you work in the cable industry?
# 4  
Old 09-09-2009
You need to break it down to see what is spitting out the error although normally I would have expected the "complainant" to announce themselves, e.g.:
Code:
bash: Bad : modifier in $ (").

or
Code:
gdb: Bad : modifier in $ (").

Did the "complainant" identify itself?

Both:
Code:
for file in `ls *usb*`; do echo -n "${file}:"; done

and
Code:
for file in *usb*; do echo -n "${file}:"; done

(run in /dev/) work okay (note the curly braces around the variable, good scripting practice).

What does running the gdb alone (with one file specified) do, then add the grep, then add the first cut, then add the second cut, that way you will find out which part is causing the error.

Can't help any more than that as I have no core files to play with...
# 5  
Old 09-09-2009
You don't say what operating system or shell this is using. I'm going to guess some distro of Linux and the Bash shell...

Quote:
Originally Posted by Amit Sura
get below response 'Bad : modifier in $ (").'
Check the filenames that your wildcard expands to. It's likely there's a character in there that when expanded in the gdb command line is giving the shell some grief.

Some rules for typing in shell commands:

1. Always put double quotes around your dollar-sign variables. (It's only wrong about 3 times in 1,000 so you've got a 99.7% chance of being right. Smilie)

2. Use $(...) instead of `...`. (Won't matter in this particular case, but it's a good idea for a variety of reasons.)

3. Don't use a bunch of pipes when they're not necessary. (In this case using gdb is way overkill as the file command will likely give you the right data. Using a command like set -- $(file "$i") eliminates all of the pipes and only requires a single fork/exec because the set command is builtin to the shell.)

Otherwise I agree with TonyFullerMalv; you need to go back to basics and test out each piece of your command line. In particular, you need to know what data is going into the loop (such as the filenames).
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #199
Difficulty: Easy
The TIOBE Index for October 2019 proclaimed that Python is becoming the new big language in favor of languages such as PHP and Perl.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert Update statement into Insert statement in UNIX using awk, sed....

Hi folks, I have a scenario to convert the update statements into insert statements using shell script (awk, sed...) or in database using regex. I have a bunch of update statements with all columns in a file which I need to convert into insert statements. UPDATE TABLE_A SET COL1=1 WHERE... (0 Replies)
Discussion started by: dev123
0 Replies

2. Shell Programming and Scripting

If statement

Hi, I have this code here. Its suppose to do something when certain condition is met, I'm pretty sure at least one of the condition will be meet somewhere in the loop but it always go to else part of the script. Is something wrong on this script? age_list=`tar -tvf /home/dir/$tarfile... (4 Replies)
Discussion started by: erin00
4 Replies

3. Shell Programming and Scripting

Statement

${PFILE}.backupfile Please tell me what the above statement means? (1 Reply)
Discussion started by: lg123
1 Replies

4. Shell Programming and Scripting

If statement help

I'm trying to create a script that would allow me to identify the sucessful removal of a file. Here's what i put together so far, let me know if it's correct or not. FILE_NAME="cactus.dat" FILE_FIND='find / -name $FILE_NAME' if ;then echo "cactus.dat was not removed successfully" ... (3 Replies)
Discussion started by: sdpinoy
3 Replies

5. UNIX for Dummies Questions & Answers

If statement (yes or no)

I have the program: #!/bin/ksh echo Please enter yes or no read n typeset -l n if ] then echo My name exit else echo delete my name fi Question: How can I make the program accept only the word "yes" or "no" otherwise it will ask the user to re-enter? Thanks! (7 Replies)
Discussion started by: bobo
7 Replies

6. Shell Programming and Scripting

How is use sselect statement o/p in insert statement.

Hi All, I am using Unix ksh script. I need to insert values to a table using the o/p from a slelect statement. Can anybody Help! My script looks like tihs. ---`sqlplus -s username/password@SID << EOF set heading off set feedback off set pages 0 insert into ${TB_NAME}_D... (2 Replies)
Discussion started by: nkosaraju
2 Replies

7. Shell Programming and Scripting

If statement - How to write a null statement

In my ksh script, if the conditions of a if statement are true, then do nothing; otherwise, execute some commands. How do I write the "do nothing" statement in the following example? Example: if (( "$x"="1" && "$y"="a" && "$z"="happy" )) then do nothing else command command fi... (3 Replies)
Discussion started by: april
3 Replies

8. Shell Programming and Scripting

statement

I want to write a program that would convert yard to feet and feet to yard. i.e 1 yard = 3 * feet Echo "enter a" read a expr a *3 The trick is that I want to give the user some options. After the conversion from yard to feet is done, I want to ask the user whether or not he/she wants to... (10 Replies)
Discussion started by: Ernst
10 Replies

9. Shell Programming and Scripting

if statement

can someone please tell me what is wrong with the below. i'm trying to get a script to run if the content of a variable is either small letter y or capital letter Y. if then whatever fi (4 Replies)
Discussion started by: Terrible
4 Replies

10. Shell Programming and Scripting

If statement

Hi, I have a statement in shell script which i am writing below: if ] then ..... What is the meaning of -a option in files, meaning of the statement in the if condition ] means. Thanks (3 Replies)
Discussion started by: dreams5617
3 Replies

Featured Tech Videos