ShellCheck doesn't find any issues with this script.
REMEMBER!
ShellCheck ONLY checks validity and syntax of the shell in use, and NOT ALL shells.
For that is is simply superb. However don't expect it to check validity and syntax of transient commands.
A deliberate simple example from ShellCheck.
As you can see, 'sed' and 'sleep' will create an error and has absolutely no idea what 'junk_command' is.
Hope this helps.
This User Gave Thanks to wisecracker For This Post:
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)
I've created a series of arrays named as follows:
row1
row2
row3
.
.
.
row10
Each has 4 elements.
I'm trying to echo the array elements out in a for loop. Here's what I have:
for ((i=1;i<=10;i++))
do
for ((j=1;j<=4;j++))
do
eval out=${row`echo $i`}
echo -n $out (3 Replies)
hi,
i created a shell script having the following content:
#! /usr/bin/ksh
FROM="myemail@domain.com"
MAILTO="someemail@domain"
SUBJECT="TEST"
BODY="/export/home/adshocker/body.txt"
ATTACH="/export/home/adshocker/attach.prog"
echo $ATTACH
ATTACH_NAME="${ATTACH##*/}"
echo $ATTACH_NAME... (5 Replies)
Hello,
In bash I can use the following:
TMP=12345
MID=${TMP:1:1}
the expected result is: 2
but when using KSH I'm getting a ''bad substitution" error.
What is the correct syntaxin ksh?
Thanks (2 Replies)
#!/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)
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)
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)
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)
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)
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
LEARN ABOUT NETBSD
script
SCRIPT(1) BSD General Commands Manual SCRIPT(1)NAME
script -- make typescript of terminal session
SYNOPSIS
script [-adfpqr] [-c command] [file]
DESCRIPTION
script makes a typescript of everything printed on your terminal. It is useful for students who need a hardcopy record of an interactive
session as proof of an assignment, as the typescript file can be printed out later with lpr(1).
If the argument file is given, script saves all dialogue in file. If no file name is given, the typescript is saved in the file typescript.
Option:
-a Append the output to file or typescript, retaining the prior contents.
-c command
Run the named command instead of the shell. Useful for capturing the output of a program that behaves differently when associated
with a tty.
-d When playing back a session with the -p flag, don't sleep between records when playing back a timestamped session.
-f Flush output after each write. This is useful for watching the script output in real time.
-p Play back a session recorded with the -r flag in real time.
-q Be quiet, and don't output started and ended lines.
-r Record a session with input, output, and timestamping.
The script ends when the forked shell exits (a control-D to exit the Bourne shell (sh(1)), and exit, logout or control-d (if ignoreeof is not
set) for the C-shell, csh(1)).
Certain interactive commands, such as vi(1), create garbage in the typescript file. script works best with commands that do not manipulate
the screen, the results are meant to emulate a hardcopy terminal.
ENVIRONMENT
The following environment variable is used by script:
SHELL If the variable SHELL exists, the shell forked by script will be that shell. If SHELL is not set, the Bourne shell is assumed. (Most
shells set this variable automatically).
SEE ALSO csh(1) (for the history mechanism).
HISTORY
The script command appeared in 3.0BSD.
BUGS
script places everything in the log file, including linefeeds and backspaces. This is not what the naive user expects.
BSD October 17, 2009 BSD