I would like to know how to handle my script that expects an input when calling the script and the user doesn't enter anything, I need to re-direct to my helpfile.
Bascically here is my script:
Code:
#!/bin/bash
csvdir="/var/local/dsx/csv/general"
csvfile="$csvdir/$csvfile"
dsxdir="/var/local/dsx/import"
dsxfile="$dsxdir/$dsxfile"
function displayHelp()
{
echo ""
echo " Usage: ./Import_PlannedCELL.sh [ -c -d ]"
echo ""
echo " -c, --csvfile identified by the input file in csv format "
echo " -d, --dsxfile identified by the output file in dsx format "
echo " -h, --help identified by the help menu "
echo ""
}
while getopts " c: d: h " option
do
case $option in
c ) csvfile="$OPTARG";;
d ) dsxfile="$OPTARG";;
h | ? | * ) displayHelp;exit;;
esac;
done
cat $csvdir/$csvfile | csvdsx -ePlanned \
-iCell:CELLID \
-cCells%BTS:SITEID^Cell:CELLID \
-sCell:CELLID \
-xCELLID,SITEID \
->$dsxdir/$dsxfile
if the user enters :
Code:
./script
instead of :
Code:
./script -h
how can i call my help function
I though this will help:
Code:
h | ? | * ) displayHelp;exit;;
but it only calls the help if I enter anything other than the specified getops options.
I need it to work also for whitespaces.
This is what I get when I try without a character:
Code:
$ ./import.sh
Warning: program compiled against libxml 207 using older 206
I/O warning : failed to load external entity "/var/local/dsx/import//var/local/dsx/import/"
failed to parse new file /var/local/dsx/import//var/local/dsx/import/
Hello, I need a smart sed command that can take any of the following two as an input and give below mentioned output. As you can see, I am trying to convert some C code
INPUT:
struct abc_sample1 {
char myString;
UINT16 myValue1;
... (2 Replies)
Hi,
First, let me explain the issue I am trying to solve. We have a lot of expect scripts with the duplicated send/expect commands. So, I'd like to be able to extract the duplicated code into the common scripts that can be used by other scripts.
Below is my test where I am trying to call... (0 Replies)
I am trying to write an expect script that trys to telnet, if telnet fails, trys to ssh to a remote network devices.
The script works fine until the following is received :
spawn telnet 10.3.2.24
Trying 10.3.2.24...
telnet: connect to address 10.3.2.24: Connection refused
10.3.2.24 is... (2 Replies)
Hi experts
I know the expect script can match the terminal output to run the the following cmd
I write a script with expect named "test", I want to run ten "test" with background running,
for ((i=1;i<=10;i++)
do
./test -n $i
done
I find all the output of test will print on one... (0 Replies)
hi all,
i have this script that accepts passwords automatically and its working in one host only. my problem is how will i use it if i need it to run in more than one host/server let say by using "for loop statement"
working :
spawn bundle linux -r hostname checkpath... (2 Replies)
Hi,
I am confused between using here document and using expect for writing interactive shell scripts(like changing password ,FTP or doing su).
My questions are :
1)Why here documents cant change password from shell script.
2)Why we need to use expect for same?
3) Can Sourcing a script can do... (2 Replies)
Hi,
I am using Solaris OS,
I want to handle an occasional expression in expect script while logging into a remote server with ssh.
In normal scenario the expected expression is as below,
spawn ssh $user@$ip
expect "assword:"
send "$password\r"
but in a condition when the remote server... (2 Replies)
Hi,
i have one problem with this script:
-------------------------------
cat hostid_gathering
#!/bin/bash
cat /home/user1/ip_switch | while read LINE; do
echo $LINE
/home/user1/expect_script2
done
------------------------------
cat /home/user1/expect_script2
#!/usr/bin/expect... (6 Replies)
I have a bash script on server that runs fine when run interactively and writes stderr output to a file.
However, when invoked through a 'expect' script run on Mac OS my laptop which does ssh to the server : generates the expected file, but file has no content. I suspect the stderr is getting... (1 Reply)
Discussion started by: sdudc
1 Replies
LEARN ABOUT CENTOS
installsieve
INSTALLSIEVE(1) General Commands Manual INSTALLSIEVE(1)
*
NAME
installsieve - user utility for managing sieve scripts
SYNOPSIS
installsieve
DESCRIPTION
installsieve is a utility that allows users to manage their sieve scripts kept on the server.
OPTIONS -v <name> View script with the given name. The script if retrieved sucessfully is output to standard output.
-l List all of the scripts currently on the server. If one of the scripts is active a arrow is printed indicating that it is the active
script.
-p <port> Port to connect to. If left off this defaults to "sieve" as defined in /etc/services.
-i <file> Install a file onto the server. If a script with the same name already exists on the server it is overwritten. Upon sucessfully
putting the script on the server the script is set active. If <file> has the extension .script it is chopped when put on the server since
sieve names may not contain a '.'.
-a <name> Set <name> as the active script. The list of available names can be obtained from the '-l' option..
-d <name> Delete the sieve script on the server with <name>.
-m <mechanism> Force installsieve to use <mechanism> for authentication. If not specified the strongest authentication mechanism is chosen.
-g <name> Get the sieve script with <name> and save it to disk with a ".script" extension. If a file with that name already exists it is
overwritten.
-u <user> Userid/Authname to use for authentication; by default, the current user.
CMU Project Cyrus INSTALLSIEVE(1)