03-18-2010
Hi, Jackinthemox, and welcome to the forums.
That type of parameter substring expansion isn't implemented by all shells. Are you certain that the shell that's executing the script supports it?
Regards,
Alister
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Need Help... I am getting a bad substitution error on my script on a Solaris Server. However the script has been proven to work on HPUX and Solaris servers...
#!/usr/bin/sh
#
# Set the location of the tzupdater.jar file
#
JAR=/tmp/tzupdater.jar # <<<<< UPDATE THIS LINE... (3 Replies)
Discussion started by: D_Redd74
3 Replies
2. UNIX for Dummies Questions & Answers
#!/bin/bash
a1=( win 12,01,02,03,04 )
a2=( pre 04,05,06 )
a3=( msn 06,07,08,09 )
Given the above arrays, I want the script to return/echo the following in a loop;
win
12,01,02,03,04
pre
04,05,06,07
msn
06,07,08,09
But I can't get it to do as such.
I've tried; (2 Replies)
Discussion started by: Muhammad Rahiz
2 Replies
3. Shell Programming and Scripting
Hi All,
I'm building a new shell script but i'm facing a problem with one line which is giving "bad substitution" error. Please assist
script lines:
#!/bin/sh
printf "%s: " "Occurrence DATE (YYYYMMDD)"; read DATE
shortdate=${DATE#??}
o/p:
./test1: bad substitution
This command is... (2 Replies)
Discussion started by: Dendany83
2 Replies
4. Solaris
Hi guys. Good day, morning, afternoon or night, depending on where you live.
I have a script shell in which I am looping on files (absolute path) see code section above.
I always have an error: bad substitution.
:wall:
Is it because my variable file is the index of the loop and not a normal... (4 Replies)
Discussion started by: soueric
4 Replies
5. Programming
Hi,
I have a make file which I try to execute, but it failed when it arrived to the line:
for r in ${PIPESTATUS
}; do if (($r != 0)); then exit $r; fi;done;
With the Error:
""make:/bin/sh: Bad substitution""
Or the Error:
"make:${PIPESTATUS[...}: Bad substitution"
(Depend on the operating... (3 Replies)
Discussion started by: nadne
3 Replies
6. Shell Programming and Scripting
Why I get bad replace when using eval?
$ map0=( "0" "0000" "0")
$ i=0
$ eval echo \${map$i}
0000
$ a=`eval echo \${map$i}` !!!error happens!!!
bash: ${map$i}: bad substitution
How to resolve it ?
Thanks! (5 Replies)
Discussion started by: 915086731
5 Replies
7. Shell Programming and Scripting
I have script data.sh which has following error.
Script Name : data.sh
#!/bin/sh
infile=$1
len=${#infile}
echo $len
texfile=${infile:0:$len-4}
echo $texfile
run command
./data.sh acb.xml
I get following error message: (5 Replies)
Discussion started by: man4ish
5 Replies
8. Shell Programming and Scripting
Cant undestand :) why i have an error on line 2.it is working on my other boxes
#!/bin/bash
ret=$(echo Q | timeout 5 openssl s_client connect "${1`hostname`}:${2-443}" -ssl3 2> /dev/null)
if echo "${ret}" | grep -q 'Protocol.*SSLv3'; then
if echo "${ret}" | grep -q 'Cipher.*0000'; then
... (7 Replies)
Discussion started by: kenshinhimura
7 Replies
9. UNIX for Beginners Questions & Answers
i am trying to prepare a train and test dataset, for which i need to randomly split the data into corresponding folders (train,test)..
I began on a simple script, but seem to get som weird error messages, that i cannot make sense of?..
what am I doing wrong?
#!/bin/bash
RED='\033]
then... (13 Replies)
Discussion started by: kidi
13 Replies
10. Shell Programming and Scripting
ShellCheck doesn't find any issues with this script.
#!/bin/bash
# color_meanings: explain meanings of colors used in bash ls
eval "$(echo "no:fi:di:ln:pi:so:do:bd:cd:or:mi:su:sg:tw:st:ex" | sed -e 's/:/=/g; s/\;/\n/g')"
{
IFS=:
for i in $LS_COLORS
do
... (18 Replies)
Discussion started by: Xubuntu56
18 Replies
sh(1) General Commands Manual sh(1)
NAME
sh - overview of various system shells
SYNOPSIS
POSIX Shell
option] ... string] [arg ...]
option] ... string] [arg ...]
Korn Shell
option] ... string] [arg ...]
option] ... string] [arg ...]
C Shell
[command_file] [argument_list ...]
Key Shell
DESCRIPTION
Remarks
The POSIX .2 standard requires that, on a POSIX-compliant system, executing the command activates the POSIX shell (located in file on HP-UX
systems), and executing the command produces an on-line manual entry that displays the syntax of the POSIX shell command-line.
However, the command has historically been associated with the conventional Bourne shell, which could confuse some users. To meet stan-
dards requirements and also clarify the relationships of the various shells and where they reside on the system, this entry provides com-
mand-line syntax and a brief description of each shell, and lists the names of the manual entries where each shell is described in greater
detail.
The Bourne shell is removed from the system starting with HP-UX 11i Version 1.5. Please use the POSIX shell as an alternative.
Shell Descriptions
The HP-UX operating system supports the following shells:
POSIX-conforming command programming language and command interpreter
residing in file Can execute commands read from a terminal or a file. This shell conforms to current POSIX standards in
effect at the time the HP-UX system release was introduced, and is similar to the Korn shell in many respects. Similar in
many respects to the Korn shell, the POSIX shell contains a history mechanism, supports job control, and provides various
other useful features.
Korn-shell command programming language and commands interpreter
residing in file Can execute commands read from a terminal or a file. This shell, like the POSIX shell, contains a his-
tory mechanism, supports job control, and provides various other useful features.
A command language interpreter
that incorporates a command history buffer, C-language-like syntax, and job control facilities.
Restricted version of the POSIX shell command interpreter.
Sets up a login name and execution environment whose capabilities are more controlled (restricted) than normal user
shells.
restricted version of the Korn-shell command interpreter
Sets up a login name and execution environment whose capabilities are more controlled (restricted) than normal user
shells.
An extension of the standard Korn Shell
that uses hierarchical softkey menus and context-sensitive help.
+--------------+--------------------+
| To obtain: | Use the command: |
+--------------+--------------------+
| POSIX Shell | /usr/bin/sh ... |
| Korn Shell | /usr/bin/ksh ... |
| C Shell | /usr/bin/csh ... |
| Key Shell | /usr/bin/keysh |
+--------------+--------------------+
These shells can also be the default invocation, depending on the entry in the file. See also chsh(1).
WARNINGS
Many manual entries contain descriptions of shell behavior or describe program or application behavior similar to ``the shell'' with a ref-
erence to ``see sh(1)''.
SEE ALSO
For more information on the various individual shells, see:
keysh(1) Key Shell description.
ksh(1) Korn Shell description.
sh-posix(1) POSIX Shell description.
csh(1) C Shell description.
sh(1)