Sponsored Content
Full Discussion: Version checking
Top Forums Shell Programming and Scripting Version checking Post 303022805 by bakunin on Friday 7th of September 2018 12:48:36 PM
Old 09-07-2018
Quote:
Originally Posted by indeed_1
Ps and args return correct value , but function (readconfig) does not return correct value!
Any idea?
First off: you do not provide your source code but only tiny (and may insignificant) morsels of it. You do not provide any output of the script but tell us only the absolute minimum of symptoms like "doesn't work" or "doesn't print". How are we supposed to debug your script on only rudimentary second-hand information?

And speaking about debugging: how about sitting down and put some debug statements into your code? At least you could show the same amount of effort you want to show us helping you in helping yourself!

Regarding your problem: i suppose the variables inside readvar() are local to that function and therefore the values are not usable outside of it. A shell function will not "return" anything else than a return code (an unsigned short short it).

I hope this helps.

bakunin
 

9 More Discussions You Might Find Interesting

1. UNIX Desktop Questions & Answers

checking of GNU C Complier version

Hi, How do i check the GNU C Complier my system is running? thanks jennifer (2 Replies)
Discussion started by: jennifer
2 Replies

2. UNIX for Dummies Questions & Answers

checking for non-zero value

I have a process that spits out a file called sqlplus.out, here is what the result looks like: Currently the value you see is zero, what I need to do is perform an action if that value is non-zero, so how do I check that value in an if statement? If it helps at this moment in development the... (6 Replies)
Discussion started by: philplasma
6 Replies

3. AIX

checking the version revisions of a java file inside the ear using KSHELL in AIX.

consider on day1, in PVCS repository we have java files like a.java,b.java with version revision 1.0, through ANT build script we have compiled and created an ear,named c.ear in AIX build server.we have transfered this ear from build server to portal server through FTP using KSHELL. consider... (0 Replies)
Discussion started by: kareemaashik
0 Replies

4. Solaris

Migrate unix version 8 to version 9

i have a program writing in PRO C which currently running in unix version 8 tie with oracle 8i, but in the future company gonna migrate this OS to version 9. Anything i have to prepare for my PRO C program to run in unix version 9? or anything would that impact my program couldn't run well? what... (2 Replies)
Discussion started by: lsy
2 Replies

5. UNIX for Advanced & Expert Users

Advanced Search * View * Edit JAVA version to WORK in GLASSFISH Forum topic JAVA version

Would like to confirm the ff. I got confused actually with the version I needed to download that will work on glassfish 3.0.1 a. Debian Squeeze (HP DL360). Need to use java version6 On Debian, I did apt-get install sun-java6-jdk. So when I check it's java version "1.6.0_22" Java(TM) SE... (1 Reply)
Discussion started by: lhareigh890
1 Replies

6. SCO

Stop boot system at "Checking protected password and checking subsystem databases"

Hi, (i'm sorry for my english) I'm a problem on boot sco unix 5.0.5 open server. this stop at "Checking protected password and checking subsystem databases" (See this image ) I'm try this: 1) http://www.digipedia.pl/usenet/thread/50/37093/#post37094 2) SCO: SCO Unix - Server hangs... (9 Replies)
Discussion started by: buji
9 Replies

7. Shell Programming and Scripting

Copy a file from directroy/ prior version to the directory/ new version

How to copy a file from directroy/ prior version to the directory/ new version automatically. (4 Replies)
Discussion started by: roy1912
4 Replies

8. AIX

Checking xlc compiler version

Hi, Below is output of lslpp command. bash-3.00# lslpp -L | grep xlC xlC.aix50.rte 11.1.0.1 C F XL C/C++ Runtime for AIX 5.3 xlC.cpp 9.0.0.0 C F C for AIX Preprocessor xlC.msg.en_US.cpp 9.0.0.0 C F C for AIX... (2 Replies)
Discussion started by: manoj.solaris
2 Replies

9. Red Hat

OS version and Firmware version

Guys, How to find OS version and firmware version in LINUX? Like in AIX. uname -a will show me the version 5.3, 6.1,7.1. lsmcode -c will show me - system firmware image as SF240_417. What are the similar commands in Linux. I checked uname -a and cat /etc/release. uname... (1 Reply)
Discussion started by: ElizabethPJ
1 Replies
Context::Preserve(3)					User Contributed Perl Documentation				      Context::Preserve(3)

NAME
Context::Preserve - run code after a subroutine call, preserving the context the subroutine would have seen if it were the last statement in the caller SYNOPSIS
Have you ever written this? my ($result, @result); # run a sub in the correct context if(!defined wantarray){ some::code(); } elsif(wantarray){ @result = some::code(); } else { $result = some::code(); } # do something after some::code $_ += 42 for (@result, $result); # finally return the correct value if(!defined wantarray){ return; } elsif(wantarray){ return @result; } else { return $result; } Now you can just write this instead: use Context::Preserve; return preserve_context { some::code() } after => sub { $_ += 42 for @_ }; DESCRIPTION
Sometimes you need to call a function, get the results, act on the results, then return the result of the function. This is painful because of contexts; the original function can behave different if it's called in void, scalar, or list context. You can ignore the various cases and just pick one, but that's fragile. To do things right, you need to see which case you're being called in, and then call the function in that context. This results in 3 code paths, which is a pain to type in (and maintain). This module automates the process. You provide a coderef that is the "original function", and another coderef to run after the original runs. You can modify the return value (aliased to @_) here, and do whatever else you need to do. "wantarray" is correct inside both coderefs; in "after", though, the return value is ignored and the value "wantarray" returns is related to the context that the original function was called in. EXPORT
"preserve_context" FUNCTIONS
preserve_context { original } [after|replace] => sub { after } Invokes "original" in the same context as "preserve_context" was called in, save the results, runs "after" in the same context, then returns the result of "original" (or "after" if "replace" is used). If the second argument is "after", then you can modify @_ to affect the return value. "after"'s return value is ignored. If the second argument is "replace", then modifying @_ doesn't do anything. The return value of "after" is returned from "preserve_context" instead. Run "preserve_context" like this: sub whatever { ... return preserve_context { orginal_function() } after => sub { modify @_ }; } or sub whatever { ... return preserve_context { orginal_function() } replace => sub { return @new_return }; } Note that there's no comma between the first block and the "after =>" part. This is how perl parses functions with the "(&@)" prototype. The alternative is to say: preserve_context(sub { original }, after => sub { after }); You can pick the one you like, but I think the first version is much prettier. AUTHOR AND COPYRIGHT
Jonathan Rockway "<jrockway@cpan.org>" Copyright (c) 2008 Infinity Interactive. You may redistribute this module under the same terms as Perl itself. perl v5.18.2 2008-01-15 Context::Preserve(3)
All times are GMT -4. The time now is 11:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy