Sponsored Content
Full Discussion: Beginner: script headache
Top Forums Shell Programming and Scripting Beginner: script headache Post 302983350 by Don Cragun on Monday 10th of October 2016 01:32:05 PM
Old 10-10-2016
Hi wisecracker,
The command:
Code:
if ( [ "$a" = "A" ] || [ "$a" = "a" ] ) && ( [ "$b" = "B" ] || [ "$b" = "b" ] )

executes [ "$a" = "A" ] || [ "$a" = "a" ] in a subshell environment and if it evaluates to true it then evaluates [ "$b" = "B" ] || [ "$b" = "b" ] in a subshell execution environment. In this construct, the parentheses are shell operators.

The command:
Code:
if { [ "$a" = "A" ] || [ "$a" = "a" ]; } && { [ "$b" = "B" ] || [ "$b" = "b" ]; }

executes [ "$a" = "A" ] || [ "$a" = "a" ] in the current shell executionl environment and if it evaluates to true it then evaluates [ "$b" = "B" ] || [ "$b" = "b" ] in the current shelll execution environment. In this construct, the braces are shell keywords; not shell operators. The <semicolon>s are shell operators used to delimit the keywords. You could also see this written as:
Code:
if { [ "$a" = "A" ] || [ "$a" = "a" ]
   } && { [ "$b" = "B" ] || [ "$b" = "b" ]
   }

using <newline> instead of <semicolon> to delimit the brace keywords.

I used braces instead of parentheses to avoid creating two subshells.
These 2 Users Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell Script for Beginner

I have a folder with lots of file. e.g. a.txt, b.txt, c.txt.... I want to put these files from the source directory and place them in a destination directory in a specific order, such as /destination/a/a.txt, /destination/b/b.txt, /destination/c/c.txt, ...... Please help. Thx :confused: (3 Replies)
Discussion started by: aaron_fong
3 Replies

2. Shell Programming and Scripting

Beginner needs help with script

I would like to get a sample script (ksh or bash, or both so I could see the differences) What I want to do with the script is send an daily email to myself that contains the following: The number of files in a directory The total size of the files in that directory The contents of a file... (2 Replies)
Discussion started by: martyb555
2 Replies

3. Shell Programming and Scripting

What's wrong here? (Beginner's script)

Hi Folks, New member here. I have been using UNIX systems for the past ~4 years (Linux, AIX, HP-UX, mostly) but have never had the need to write a script for myself. Now, things have changed and I'm in a bit of a pickle. I have, what looks to me like a syntactically correct script that's not... (2 Replies)
Discussion started by: pallak7
2 Replies

4. Shell Programming and Scripting

Need help with (beginner?) script

I am in an intro to unix/linux course, and need some help with a project. We are tasked with creating a basic script to automate a task that an Admin might need to do. We submitted ideas and mine was to have the system keep a record of log in and log out times for users. I thought this was going... (3 Replies)
Discussion started by: DethbyNo
3 Replies

5. Shell Programming and Scripting

Beginner shell script help

. ./testFile.sh url=http://ichart.finance.yahoo.com/table.csv?s= suf=&d=5&e=9&f=2009&g=d&a=1&b=4&c=1999&ignore=.csv wget $url$s1$suf; sleep 10; cat header.txt > $s1.txt; chmod 777 $s1.txt; sed '1d' table.csv?s\=$s1 >> $s1.txt; rm -Rf table* Very new at shell scripting as you can see... (3 Replies)
Discussion started by: harte
3 Replies

6. Shell Programming and Scripting

Debugging a beginner shell script...

I have been following a tutorial on bash which has proven to be very helpful. However, i am stuck with a command not found issue when asking for a y/n response from the user. Below is the part of code I believe is giving me grief... I have been trying to work through this for 3 hours now.... Please... (5 Replies)
Discussion started by: brokepunk
5 Replies

7. Shell Programming and Scripting

Shell script (beginner) need help...

Hello, I'm new to Sheel script and I need your help for a script I need to develop (for me). Indead, I have a software which log all entry from internet and save it in text file. But, the log is practically unreadable because every 256 characters jump to a new line (even if the message is... (5 Replies)
Discussion started by: acidoangel
5 Replies

8. Homework & Coursework Questions

Shell-script loops beginner

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: "Create a shell script that changes the selected word to another word in all files from selected archive. The... (1 Reply)
Discussion started by: oibanuelos
1 Replies

9. Homework & Coursework Questions

Shell Script (beginner)

1. The problem statement, all variables and given/known data: Arguments: http://farm9.staticflickr.com/8070/8212131370_8b6e8c10c5_c.jpg I am given these three arguments. $1, $2, $3 The first argument is the path to a directory. So, how would I go into the directory and compare files? I... (5 Replies)
Discussion started by: spider-man
5 Replies

10. UNIX for Dummies Questions & Answers

Beginner needs help with first script

Hi, so I have been doing ok making a relatively simple script just processing some data. However I am now at the point where im struggling to find the specific help I need. I have files in the form of yyyy.ddd.hh.mm.ss.stationnumber.component (they are earthquake events). eg.... (12 Replies)
Discussion started by: neneman3000
12 Replies
command(1)						      General Commands Manual							command(1)

NAME
command - Treats command arguments as simple commands SYNOPSIS
command [-p] command_name [argument...] command [-v | -V] command_name The command command causes the shell to treat the arguments to command as simple commands, and suppresses the default shell function lookup. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: command: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
Performs the command search using a default value for PATH that is guaranteed to find all of the standard utilities. Writes a string to standard output that indicates the path name or command to be used by the shell in the current shell execution environment to invoke com- mand_name. Writes a string to standard output that indicates how the name given in the command_name operand will be interpreted by the shell in the current shell execution environment. DESCRIPTION
The command command allows you to run the following commands: User-defined commands whose names correspond to shell built-in commands. System commands whose names correspond to shell built-in commands. The command_name argument specifies the name of a utility. The one or more optional arguments to command_name specify strings treated as arguments to the specified utility. It also provides information concerning how a command name will be interpreted by the shell. NOTES
[Tru64 UNIX] If command_name is not the name of a function, the effect of command is the same as would be obtained by specifying com- mand_name without command. RESTRICTIONS
Since the -v and -V options to command produce output in relation to the current shell execution environment, if command is called in a subshell or separate utility execution environment, it may not produce correct results. The following are examples of this type of opera- tion: (PATH=foo command -v) nohup command -v EXIT STATUS
When the -v or -V options are specified, command returns one of the following values. Successful completion. The command_name could not be found, or an error occurred. If the -v or -V options are not specified, command returns one of the following values on error. The utility specified by command_name was found but could not be invoked. An error occurred in the command command, or the utility specified by the command_name argument could not be invoked. If no error occurs, the exit status of command is that of the command specified by the arguments to command. EXAMPLES
To ensure execution of the simple command pwd instead of the pwd shell built-in command, enter the following: command -p pwd The preceding command displays the full path name of the current directory, and does not perpetuate a view of the current directory loca- tion created by links as the shell built-in command might do. ENVIRONMENT VARIABLES
The following environment variables affect the execution of command: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization variables contains an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error. Determines the location of message cat- alogues for the processing of LC_MESSAGES. Determines the search path used during the command search unless the -p option is specified. SEE ALSO
Commands: env(1), hash(1), type(1) Standards: standards(5) command(1)
All times are GMT -4. The time now is 05:40 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy