Visit Our UNIX and Linux User Community


brand new user!.. Lost on BASH script writing


 
Thread Tools Search this Thread
Homework and Emergencies Homework & Coursework Questions brand new user!.. Lost on BASH script writing
# 1  
Old 05-07-2011
brand new user!.. Lost on BASH script writing

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!

1. The problem statement, all variables and given/known data:
I have just gotten into writing bash scripts for a class, part of the assignment is to read and be able to tell what a script does by looking at it, unfortunate for me this is an online class, no real instructor support, so I have no idea what I'm looking at


2. Relevant commands, code, scripts, algorithms:

Code:
#!/bin/bash
if false then
echo "1"
elif true

then
echo "2"
else
echo "3"
fi


3. The attempts at a solution (include all code and scripts):
Brand new user, trying to decipher what this script is supposed to do?


4. Complete Name of School (University), City (State), Country, Name of Professor, and Course Number (Link to Course):

Tarrant County Community College, North Richland Hills, TX, USA, Steve Smiley (professor), Course # ITSC 1407
Note: Without school/professor/course information, you will be banned if you post here! You must complete the entire template (not just parts of it).

Last edited by DukeNuke2; 05-08-2011 at 05:43 AM..
# 2  
Old 05-07-2011
Nothing -- it's syntactically invalid. Here's how you fix it:
Code:
#!/bin/bash
# false is a program that always returns a nonzero value.
# if considers nonzero as fail, so this 
# You can't just put 'then' straight after, either a newline or ; is needed between
if false
then
         echo "1"
# true on the other hand always returns 0, so it does 'echo 2'.
elif true
then
       echo "2"
else
# it never runs 'echo 3', under any circumstances.
        echo "3"
fi

This User Gave Thanks to Corona688 For This Post:
# 3  
Old 05-07-2011
Data

thank you very much, I'm searching the forums for a beginners guide, so I have a cheat sheet for syntax, i.e. when to put [ xyz ] and what (( xyz )) means so I won't have to bug folks too terribly much

---------- Post updated at 08:21 PM ---------- Previous update was at 08:05 PM ----------
Another one I can't decipher..

Code:
#!/bin/bash
for NAME in /etc/*
do
if [ r "$NAME" af "$NAME" ] then
wc c "$NAME"
fi
done


Last edited by DukeNuke2; 05-08-2011 at 05:43 AM..
# 4  
Old 05-08-2011
That's also not valid syntax, I'm not sure what it's supposed to do either.

I'll tackle it in parts instead.

Code:
for NAME in /etc/*
do
        echo $NAME
done

This would print every folder or file found directly inside /etc one by one, because NAME would be set to it before it gets to 'echo' every loop.

Code:
if [ r "$NAME" af "$NAME" ]

I think this was supposed to test if NAME was a file and whether you can read it.

Much simpler all-in-one-line thing:

Code:
[ -f "$NAME" ] && [ -r "$NAME" ] && wc -c "$NAME"

To see how && and || work, try true && echo asdf and false && echo asdf and true || echo asdf and false || echo asdf.

To see what wc -c does, see man wc.

Also see the advanced bash scripting guide and test operators specifically. You're going to really like the reference cards.
This User Gave Thanks to Corona688 For This Post:
# 5  
Old 05-08-2011
you're a life saver, these were scripts given to us, and we were supposed to translate and tell what they do.. I sat for 2 hours and I think i reached the end of google!.. thank you!

Previous Thread | Next Thread
Test Your Knowledge in Computers #489
Difficulty: Medium
Because interpreted languages are not compiled, syntax errors do not become runtime errors.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Writing Hbase and pig scripts in the bash script file

Hi, I have a script file where i'm validatig the input file and storing the validated records on HDFS. I wanted to load data from HDFS to HBASE using pig script. So for that i have created a HBASE table and written pig script to load data from HDFS to HBASE which is working fine. Now i wanted... (0 Replies)
Discussion started by: shree11
0 Replies

2. Shell Programming and Scripting

Writing hive scripts in bash script file

Hi, I wanted to load data from HDFS to HIVE by writing bash script. Description: I have written a bash script to validate the data and loaded validated data from local file system to HDFS. Now in the same bash script i wanted to load the data from HDFS to HIVE. How can i do it ? Also how tyhe... (2 Replies)
Discussion started by: shree11
2 Replies

3. Shell Programming and Scripting

Why commands inside bash script lost effectiveness?

Hi, I have a bash script to run many system commands on CentOS machine, but I am puzzled by some commands had no effect on parent environment. For example, I want to refresh the desktop xdg menu when some processes added or deleted items from desktop xdg menu. If I run "killall gnome-panel"... (4 Replies)
Discussion started by: hce
4 Replies

4. Shell Programming and Scripting

Question about writing a bash script

Hello, I want to write a bash script to delete the content after '#'. However, if '#' appears in a string with "", ignore this. For example, input file: test #delete "test #not delete" Output file: test "test #not delete" Does anyone know how to write this script? Thanks (1 Reply)
Discussion started by: jeffwang66
1 Replies

5. Shell Programming and Scripting

Mkbootfs writing to stdout in bash script

Hi, I need to automate some repacking tasks of a boot image for Android When in command line, I can use this command: mkbootfs /path/to/root > /path/to/ramdisk-recovery.cpio;However, if I try to run the command from a shell script under Ubuntu, it fails and outputs to stdout instead of the... (27 Replies)
Discussion started by: Phil3759
27 Replies

6. Shell Programming and Scripting

Writing a bash script using host

Im trying to write a script using the host command but its not working properly. I cant understand what Im doing wrong. When I use it at the command prompt, it works fine. But its being used actually in the script, it says its not found: 2 SERVFAIL. Can anyone help me? Here's what I have so far: no... (6 Replies)
Discussion started by: relsha
6 Replies

7. Shell Programming and Scripting

Help with writing simple bash script

I want to write a bash script to: 1. Send an email from localhost to an external gmail account. (gmail then automatically forwards the message back to a pop account on the same server. 2. Script waits 3 minutes then checks to see if the email arrived, and if not, it sends an email to... (9 Replies)
Discussion started by: sallyanne
9 Replies

8. Shell Programming and Scripting

bash and ksh: variable lost in loop in bash?

Hi, I use AIX (ksh) and Linux (bash) servers. I'm trying to do scripts to will run in both ksh and bash, and most of the time it works. But this time I don't get it in bash (I'm more familar in ksh). The goal of my script if to read a "config file" (like "ini" file), and make various report.... (2 Replies)
Discussion started by: estienne
2 Replies

9. Shell Programming and Scripting

Writing Bash script

Could anyone help me to Write a script in BASH Shell to determine the percentage of system disk space you are using. (1 Reply)
Discussion started by: boris
1 Replies

10. Shell Programming and Scripting

Problems writing bash script to unzip files

I'm getting the following errors when I try to write a script to unzip some zip files. When I use the free trial copy of the commerical winzip program, however, they work fine. When I use -l or -t on unzip it indicates no errors. When I use the -o switch interactively from the bash command line it... (1 Reply)
Discussion started by: siegfried
1 Replies

Featured Tech Videos