09-14-2019
ksh93+, (ksh was the shell the OP specified), also supports negative indexes, to indicate elements from right to left (probably after a certain revision level).
zsh also does this, but the first index of arrays is 1, rather than 0..
bash requires version 4.3 or higher
This User Gave Thanks to Scrutinizer For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hi all,
got this silly problem and i just can't seem to make sense of the error message its is saying 1400: cannot open. its my first time at writing a while loop but tried all sorts to get it working without success.
#!usr/bin/ksh
integer max=1400
set file="afilename"
integer i=1
... (3 Replies)
Discussion started by: scriptingmani
3 Replies
2. Shell Programming and Scripting
Hi ALL,
I need to take some command line arguments for my script and then want to run a function for each argument.I thought of using for loop as below, but its not working , can some one please help...
#!/bin/ksh
lpar1=$1
lpar2=$2
lpar3=$3
lpar4=$4
lpar5=$5
echo "$lpar1" >>lpar.txt
echo... (4 Replies)
Discussion started by: prashant43
4 Replies
3. Shell Programming and Scripting
Hi,
I want to write a while loop like this can any one say me whats wrong with my loop
USAGE="Usage: Mail.ksh"
integer i=3
while ((1<i<=3))
do
.
.
.
.
(( CMD_JUL = LSD_JUL - i ))
CUR_MAINT_DATE=$(julian2date ${CMD_JUL})
.
.
.
i=i-1
done (1 Reply)
Discussion started by: bhagya2340
1 Replies
4. Shell Programming and Scripting
hi all,
i have a for loop statement in my ksh code. it only returns the first value retrieved not the value for the other rows.
ex: acct_id value = returned value in the for loop
1 = 1
2 = 1 (instead of 2)
3 = ... (1 Reply)
Discussion started by: ryukishin_17
1 Replies
5. Shell Programming and Scripting
Hi,
I 'm trying to send an e-mail for every different line in the .txt
for i in {1..$variable}
do
sed -n "/$i$/p" text.txt
done
I have two problems about this.
First one is that for loop doesn't work
and the second one is that i cant get the output of sed (4 Replies)
Discussion started by: ozum
4 Replies
6. Shell Programming and Scripting
I need an echo "hit enter" running every 3 seconds till user hit enter key.
10x (1 Reply)
Discussion started by: LiorAmitai
1 Replies
7. Shell Programming and Scripting
Any reason why this thing doesn't works in Korn Shell
for (( expr1; expr2; expr3 ))
do
..... ... repeat all statements between do and done until expr2 is TRUE Done
Rgds,
TS (4 Replies)
Discussion started by: targetshell
4 Replies
8. Shell Programming and Scripting
Hi,
I want to read file multiple times. Right now i am using while loop but that is not working.
ex.
While read line
do
while read line2
do
echo stmt1
#processing some data based on data.,
done < file2.txt
done < file1.txt # This will have 10... (4 Replies)
Discussion started by: tmalik79
4 Replies
9. UNIX for Beginners Questions & Answers
Hi All,
I'm trying to write while loop with multiple if conditions. Each and every if condition with different variables. whenever one if condition fails i have remove the file
from filename and have to pick another file and loop should exit until the last file found in filename. Please help... (2 Replies)
Discussion started by: Kayal
2 Replies
10. UNIX for Beginners Questions & Answers
while ];do
first=${hat}
echo "${first}"
b=$((b+1))
a=$((a+5))
done
I'm trying to append values from the indicated index of one array to other, but it gives me an error with while loop....suggesting that .......
In the hat array, it contains many values... (2 Replies)
Discussion started by: TestKing
2 Replies
LEARN ABOUT OPENSOLARIS
shift
shift(1) User Commands shift(1)
NAME
shift - shell built-in function to traverse either a shell's argument list or a list of field-separated words
SYNOPSIS
sh
shift [n]
csh
shift [variable]
ksh
*shift [n]
ksh
+shift [n]
DESCRIPTION
sh
The positional parameters from $n+1 ... are renamed $1 ... . If n is not specified, it is assumed to be 1.
csh
The components of argv, or variable, if supplied, are shifted to the left, discarding the first component. It is an error for the variable
not to be set or to have a null value.
ksh
The positional parameters from $n+1 $n+1 ... are renamed $1 ..., default n is 1. The parameter n can be any arithmetic expression that
evaluates to a non-negative number less than or equal to $#.
On this manual page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a
variable assignment. This means that tilde substitution is performed after the = sign and word splitting and file name genera-
tion are not performed.
ksh93
shift is a shell special built-in that shifts the positional parameters to the left by the number of places defined by n, or 1 if n is
omitted. The number of positional parameters remaining is reduced by the number of places that are shifted.
If n is specified, it is evaluated as an arithmetic expression to determine the number of places to shift. It is an error to shift more
than the number of positional parameters or a negative number of places.
The following exit values are returned by shift in ksh93:
0 Successful completion. The positional parameters were successfully shifted.
>0 An error occurred.
On this manual page, ksh93(1) commands that are preceded by one or two + are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. They are not valid function names.
5. Words, following a command preceded by ++ that are in the format of a variable assignment, are expanded with the same rules as a
variable assignment. This means that tilde substitution is performed after the = sign and field splitting and file name genera-
tion are not performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
csh(1), ksh(1), ksh93(1), sh(1), attributes(5)
SunOS 5.11 20 Nov 2007 shift(1)