07-17-2007
Simple loop query
Hi All
Just started with shell scripts and am stumped by, what is to most of you no doubt, a simple issue.
All I'm trying to do is prompt a user for input and writing to a log file. If the user types the word 'stop', then the program should halt. If the word typed is 'clear', then the log file should be cleared.
Starting simply(!), all I've got so far is:
LOGDIR=/some/dir/
TARGETFILE="whatever"
ans="abc"
while [ ${ans} != "stop" }
do
echo "Enter text:"
read ${ans}
echo ${ans} >>${LOGDIR}/${TARGETFILE}
done
All that happens is the original value of "abc" is written to the log. Obviously the variable isn't being overwritten by the user input. Can anyone help with basic help for a newbie?
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
hi,
i would like to replace a string in a series of files with another string, without outputting to new files. is this possible?
i've tried using sed, and started by trying to alter the contents of one file...
sed 's/string1/string2/g' file.txt
but while this does the replacement on... (2 Replies)
Discussion started by: schmark
2 Replies
2. Shell Programming and Scripting
I want to write a script to go to particular path in file and run shell script from there.
what will be shell script for the same. (2 Replies)
Discussion started by: shekhar_ssm
2 Replies
3. Shell Programming and Scripting
Dear,
I have a alarm text file, containing minor and major alarms, i am intrested in Mojor alarm with its alarm header and next four lines in seperate file....
Can anybody help me with this below is the alarm file output.
:SEV="MAJOR":
Object-Instance %
unit-type % bts nbr % 25
... (5 Replies)
Discussion started by: Danish Shakil
5 Replies
4. Shell Programming and Scripting
Filename.txt
My First Line
My Second Line
::::While Loop:::
Program:
while read line
do
echo "$line"
done < Filename.txt
output:
My First Line
My Second Line
Is it possible to use for loop to get the same output.
I have tried executing below code but i get every word of my file... (8 Replies)
Discussion started by: pinga123
8 Replies
5. Programming
Given the following code inside the function ext3_write_super():
(It's there in Linux kernel 2.6.27.59)
static void ext3_write_super (struct super_block * sb)
{
if (mutex_trylock(&sb->s_lock) != 0)
BUG();
sb->s_dirt = 0;
}
The conditional test at if... (2 Replies)
Discussion started by: Praveen_218
2 Replies
6. Shell Programming and Scripting
Hi friends,
One of my shell program(test.ksh) contains the following if loop.Can anyone please explain me how this loop will work
The shell script will be executed as test.ksh -d all
The value of variables are
user=all
opt=-d
if &&
then
&& _del_all_w=1 || _group="${1}"... (1 Reply)
Discussion started by: kavithakuttyk
1 Replies
7. Shell Programming and Scripting
I have a script script.shwhich is scheduled to run at 11 AM everyday.
# script.sh Code:
./scb_script.sh &
unfortunately scb_script.sh is running today in infinite loop as respective files are not available.
My question, when script.sh starts running tomorrow, will the old process be... (1 Reply)
Discussion started by: JSKOBS
1 Replies
8. Shell Programming and Scripting
Hi all...
I am using a for loop for another part of AudioScope...
Consider this code:-
for n in {0..100}
do
if }" = "another_string" ]
then
break
fi
done
This works perfectly except I am not sure if breaking out of a 'for' loop might cause... (2 Replies)
Discussion started by: wisecracker
2 Replies
9. Programming
Dear community,
please help with a query on Oracle. I'm using SQLPlus (but with SQLDeveloper is the same) to accamplish a sinple query like:
select count(*) from ARCHIT_D_TB where (TYP_ID=22 OR TYP_ID=23) and SUB_TM like '%SEP%' and CONS=1234This is a very simple query that works perfect until... (5 Replies)
Discussion started by: Lord Spectre
5 Replies
10. UNIX for Beginners Questions & Answers
Hi, its getting aborted with below IF loop, can plz guide me what im missing here
if || ; then
echo "print $APPEND"
fi (3 Replies)
Discussion started by: JSKOBS
3 Replies
rm(1) General Commands Manual rm(1)
Name
rm, rmdir - remove (unlink) files or directories
Syntax
rm [-f] [-r] [-i] [-] file-or-directory-name...
rmdir directory-name...
Description
The command removes the entries for one or more files from a directory. If there are no links to the file then the file is destroyed. For
further information, see
The command removes entries for the named directories, which must be empty. If they are not empty, the directories remain, and displays an
error message (see EXAMPLES).
To remove a file, you must have write permission in its directory, but you do not need read or write permission on the file itself. When
you are using from a terminal, and you do not have write permission on the file, the command asks for confirmation before destroying the
file.
If input is redirected from the standard input device (your terminal), then checks to ensure that input is not coming from your terminal.
If not, sets the -f option, which overrides the file protection, and removes the files silently, regardless of what you have specified in
the file redirected as input to See EXAMPLES.
Options
- Specifies that the named files have names beginning with a minus (for example ).
-f Forces the removal of file or directory without first requesting confirmation. Only system or usage messages are displayed.
-i Prompts for yes or no response before removing each entry. Does not ask when combined with the -f option. If you type a y, followed
by any combination of characters, a yes response is assumed.
-r Recursively removes all entries from the specified directory and, then, removes the entry for that directory from its parent direc-
tory.
Examples
The following example shows how to remove a file in your current working directory.
rm myfile
This example shows use of the null option to remove a file beginning with a minus sign.
rm - -gorp
This example shows how a confirmation is requested for removal of a file for which you do not have write permission.
rm testfile
rm: override protection 400 for testfile? y
This example shows how the combination of -i and -r options lets you examine all the files in a directory before removing them. In the
example, mydirectory is a subdirectory of the current working directory. Note that the last question requests confirmation before removing
the directory itself. Although the user types ``y'', requesting removal of the directory, the command does not allow this, because the
directory is not empty; the user typed ``n'' to the question about the file file2 , so file2 was not removed.
rm -ir mydirectory
rm: remove mydirectory/file1? y
rm: remove mydirectory/file2? n
.
.
.
rm: remove mydirectory? y
rm: mydirectory: Directory not empty
This example illustrates that overrides file protection when input is redirected from the standard input device. The user creates a file
named ``alfie'', with a read-only file protection. The user then creates a file named ``ans'' to contain the character ``n''. The command
following destroys the file ``alfie'', even though the redirected input file requested no deletion.
cat > alfie
hello
^d
chmod 444 alfie
cat > ans
n
^d
rm < ans alfie
See Also
unlink(2)
rm(1)