03-07-2017
Hi,
The problem is that (unless I'm missing something here) your syntax, as it stands, isn't valid and so won't work at all.
For example, you have a line like this in your function:
return RETVAL
In Bash, the 'return' function can only return a single numeric value. It should be thought of as the exit value of the function, more or less. You can't return a full alphanumeric string, and so this approach isn't valid. No function in Bash can ever pass back a string by using 'return'.
Secondly, you are using syntax like this in your output:
echo -e $LZ"Test"
Here you're mixing up variables with functions. If you want to call the function 'LZ', you have to do it by essentially treating it as a command name (like 'Log' in my earlier example). Bash will always treat $LZ as the contents of a variable called 'LZ', and not as a function. So the value of it will never change and will always be the same, unless you subsequently change it yourself.
So again unless I'm missing something in your explanation (which I certainly grant I may very well be), then you are going to have to re-write this so that the function is defined correctly, and that your output is generated by calling it correctly.
If you feel there's something I've not grasped here or if you have any other info that might clear things up, then please let me know and I'll be happy to assist further.
10 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
can anyone give me some idea on unix filesystem namei's algorithsm (2 Replies)
Discussion started by: kangc
2 Replies
2. Shell Programming and Scripting
Hi,
Can anyone please let me know the meaning of this line,i am not able to understand the egrep part(egrep '^{1,2}).This will search for this combination in beginning but what does the values in {}signifies here.
/bin/echo $WhenToRun | egrep '^{1,2}:$' >/dev/null (1 Reply)
Discussion started by: namishtiwari
1 Replies
3. Shell Programming and Scripting
There is a function called start:
start()
{
echo -n $"Sending Startup Email: "
echo "${RESTARTBODY}" | mutt -s "${RESTARTSUBJECT}" ${EMAIL}
RETVAL=$?
if ; then
touch ${LOCKFILE}
success
else
failure
fi
echo
return ${RETVAL}
}
Can anyone explain what the bold part of the... (3 Replies)
Discussion started by: proactiveaditya
3 Replies
4. Shell Programming and Scripting
Can Anybody please tell me the meaning of the script:
#!/bin/sh
str=$@
echo $str | sed 's/.*\\//'
exit 0 (6 Replies)
Discussion started by: nixhead
6 Replies
5. UNIX for Dummies Questions & Answers
If I don't explain my issue well enough, I apologize ahead of time, extreme newbie here to scripting.
I'm currently learning scripting from books and have moved on to the text Wicked Cool Shell Scripts by Dave Taylor, but there are still basic concepts that I'm having trouble understanding.
... (10 Replies)
Discussion started by: Chasman78
10 Replies
6. Shell Programming and Scripting
i am beginner in shell scripting.
not able to understand what below line will do.
PS1=${HOST:=Žuname -nŽ}"$ " ; export PS1 HOST
below is the script
#!/bin/hash
PS1=${HOST:=Žuname -nŽ}"$ " ; export PS1 HOST ;
echo $PS1
and i getting the below output
Žuname -nŽ$ (25 Replies)
Discussion started by: scriptor
25 Replies
7. Shell Programming and Scripting
Hi all,
I'm not clear of this regexp command:
regexp {(\S+)\/+$} $String match GetString
From my observation and testing,
if $String is abc/def/gh
$GetString will be abc/def
I don't understand how the /gh in $String got eliminated.
Please help. Thanks (2 Replies)
Discussion started by: mar85
2 Replies
8. Shell Programming and Scripting
Hi
i was going through the script debugging technique. below example was given in the book.
1 #!/bin/sh
2
3 Failed() {
4 if ; then
5 echo "Failed. Exiting." ; exit 1 ;
6 fi
7 echo "Done."
8 }
9
10 echo "Deleting old backups,... (11 Replies)
Discussion started by: scriptor
11 Replies
9. Shell Programming and Scripting
Hello,
I recently started going in depth with the shell, so I started learning from Linux Shell Scripting CookBook, 2nd edition. I am at the first chapter atm, and the author tells to define a function in the ~/.bashrc.
The function is below.
prepend() { && eval $1=\"$2':'\$$1\" && export... (1 Reply)
Discussion started by: Vaseer
1 Replies
10. Shell Programming and Scripting
Hello,
I have many folders under which there is always a file with the same name, which contains the data I need to process later. A perl oneliner was borrowed
perl -e 'print "gene_id\t", join("\t", map {/(.*)\//; $1} @ARGV),"\n";' *_test.trim/level.csvto make a header so that each column... (5 Replies)
Discussion started by: yifangt
5 Replies
LEARN ABOUT SUNOS
endusershell
getusershell(3C) Standard C Library Functions getusershell(3C)
NAME
getusershell, setusershell, endusershell - get legal user shells
SYNOPSIS
#include <unistd.h>
char *getusershell(void);
void setusershell(void);
void endusershell(void);
DESCRIPTION
The getusershell() function returns a pointer to a legal user shell as defined by the system manager in the file /etc/shells. If
/etc/shells does not exist, the following locations of the standard system shells are used in its place:
/bin/bash /bin/csh
/bin/jsh /bin/ksh
/bin/pfcsh /bin/pfksh
/bin/pfsh /bin/sh
/bin/tcsh /bin/zsh
/sbin/jsh /sbin/pfsh
/sbin/sh /usr/bin/bash
/usr/bin/csh /usr/bin/jsh
/usr/bin/ksh /usr/bin/pfcsh
/usr/bin/pfksh /usr/bin/pfsh
/usr/bin/sh /usr/bin/tcsh
/usr/bin/zsh /usr/xpg4/bin/sh
The getusershell() function opens the file /etc/shells, if it exists, and returns the next entry in the list of shells.
The setusershell() function rewinds the file or the list.
The endusershell() function closes the file, frees any memory used by getusershell() and setusershell(), and rewinds the file /etc/shells.
RETURN VALUES
The getusershell() function returns a null pointer on EOF.
BUGS
All information is contained in memory that may be freed with a call to endusershell(), so it must be copied if it is to be saved.
SunOS 5.10 30 Aug 2004 getusershell(3C)