Sponsored Content
Top Forums Shell Programming and Scripting Function - Make your function return an exit status Post 303037622 by meister29 on Thursday 8th of August 2019 06:41:09 AM
Old 08-08-2019
Function - Make your function return an exit status

Hi All,

Good Day, seeking for your assistance on how to not perform my 2nd, 3rd,4th etc.. function if my 1st function is in else condition.

Code:
#Body

function1() 
{
if [ - e test.xt] 
then
echo "exist" 
else
echo "not exist" 
} 

#if not exist in function1 my all other function will not proceed. 

function2() 
{
cat test.txt
} 

#Main
function1
function2
etc..

if i put my function1 and function2 in main it always proceed on function 2 even though theres an error in function1. im not sure how to start.

TIA
 

10 More Discussions You Might Find Interesting

1. HP-UX

Return of EXIT status ( $? )

I have the question: How return the exit code from then assign : VAR=$(command ) for ex. VAR=$(ls ....) VAREXIT=$? echo $VAREXIT VAREXIT is equal to 0 if the directory exist or not exist. WHI?? if i execute the command direct from line-command , the value of $? is different if... (1 Reply)
Discussion started by: ZINGARO
1 Replies

2. Shell Programming and Scripting

evaluate return status of a function

Hi all I'm trying to evalute the return status of a function without much success. I've put a very basic example below to explain. check_ok() works fine but when used within an if statement, it always returns true, whether it is true or false. I'm guessing it returns true as the function... (4 Replies)
Discussion started by: tig2810
4 Replies

3. Shell Programming and Scripting

command does not return exit status due to tee

Hi, I am using /bin/sh. I want to display the stdout and stderr on the terminal as well as save it in a file, so I'm using this command. gmake all 2>&1 | tee log But even if gmake fails, it's always giving 0 as exit status, i suppose because of tee. # false 2>&1 | tee Log # echo $? 0... (2 Replies)
Discussion started by: anand_bh
2 Replies

4. Shell Programming and Scripting

Return a value from called function to the calling function

I have two scripts. script1.sh looks -------------------------------- #!/bin/bash display() { echo "Welcome to Unix" } display ----------------------------- Script2.sh #!/bin/bash sh script1.sh //simply calling script1.sh ------------------------------ (1 Reply)
Discussion started by: mvictorvijayan
1 Replies

5. Shell Programming and Scripting

exit from function

Hi all, My kshell code is not working, when I use a function to return something. But when I use the same function as without returning any values, it is working. Pls help me here. Code1 : func1 () { y=`echo $x | grep XXX| cut -f 2 -d ' '` if ; then exit 100 ... (2 Replies)
Discussion started by: poova
2 Replies

6. Shell Programming and Scripting

Exit from function

Hi, I just want to exit from function if some condition doesnt meet then control should go back to main program and start running from where it left.. When i used "exit" inside the function, its simply exited from entire script and it didnt run anymore.. Any idea how to do this.. Thanks... (3 Replies)
Discussion started by: nram_krishna@ya
3 Replies

7. UNIX for Advanced & Expert Users

Cannot exit from a function?

Hi, Is there a way to exit from a subcommand, which is a function in my example below? #!/bin/ksh function exitFunction { if ]; then echo "success" elif ]; then echo "failed" exit 1 # the exit problem fi exit 0 } ... (2 Replies)
Discussion started by: chstr_14
2 Replies

8. Shell Programming and Scripting

After exit from function it should not call other function

Below is my script that is function properly per my conditions but I am facing one problem here that is when one function fails then Iy should not check other functions but it calls the other function too So anyone can help me how could i achieve this? iNOUT i AM GIVING TO THE... (1 Reply)
Discussion started by: rohit22hamirpur
1 Replies

9. Shell Programming and Scripting

Clear contents of specified directories, then return exit status

Hello, this is my first post here. I'm attempting to write a bash shell script to rm the contents of a directory without deleting the directory, specifically in OS X 10.10 . Here's what I have: function clear() { USER="$USER" DIR=$1 rm -rfv /Users/"$USER"/library/$DIR/* } clear... (6 Replies)
Discussion started by: YouNicks
6 Replies

10. Shell Programming and Scripting

Return: can only `return' from a function or sourced script

Not sure where the problem is. I can run the script without any issue using the following command. . /opt/app/scripts/cdc_migration.sh But it fails with the below error when I try it this way /opt/app/scripts/cdc_migration.sh /opt/app/scripts/cdc_migration.sh: line 65: return: can only... (1 Reply)
Discussion started by: svajhala
1 Replies
xmonad(1)							   xmonad manual							 xmonad(1)

Name
       xmonad - a tiling window manager

Description
       xmonad  is  a minimalist tiling window manager for X, written in Haskell.  Windows are managed using automatic layout algorithms, which can
       be dynamically reconfigured.  At any time windows are arranged so as to maximize the use of screen real estate.	All features of the window
       manager	are  accessible  purely from the keyboard: a mouse is entirely optional.  xmonad is configured in Haskell, and custom layout algo-
       rithms may be implemented by the user in config files.  A principle of xmonad is predictability: the user should know in advance  precisely
       the window arrangement that will result from any action.

       By  default,  xmonad  provides three layout algorithms: tall, wide and fullscreen.  In tall or wide mode, windows are tiled and arranged to
       prevent overlap and maximize screen use.  Sets of windows are grouped together on virtual screens, and each screen retains its own  layout,
       which may be reconfigured dynamically.  Multiple physical monitors are supported via Xinerama, allowing simultaneous display of a number of
       screens.

       By utilizing the expressivity of a modern functional language with a rich static type system, xmonad provides a complete, featureful window
       manager	in  less  than	1200 lines of code, with an emphasis on correctness and robustness.  Internal properties of the window manager are
       checked using a combination of static guarantees provided by the type system, and type-based automated testing.	A benefit of this is  that
       the code is simple to understand, and easy to modify.

Usage
       xmonad  places  each  window  into a "workspace".  Each workspace can have any number of windows, which you can cycle though with mod-j and
       mod-k.  Windows are either displayed full screen, tiled horizontally, or tiled vertically.  You can toggle the layout mode with	mod-space,
       which will cycle through the available modes.

       You  can switch to workspace N with mod-N.  For example, to switch to workspace 5, you would press mod-5.  Similarly, you can move the cur-
       rent window to another workspace with mod-shift-N.

       When running with multiple monitors (Xinerama), each screen has exactly 1 workspace visible.  mod-{w,e,r} switch the focus between screens,
       while  shift-mod-{w,e,r}  move the current window to that screen.  When xmonad starts, workspace 1 is on screen 1, workspace 2 is on screen
       2, etc.	When switching workspaces to one that is already visible, the current and visible workspaces are swapped.

   Flags
       xmonad has several flags which you may pass to the executable.  These flags are:

       --recompile
	      Recompiles your configuration in ~/.xmonad/xmonad.hs

       --restart
	      Causes the currently running xmonad process to restart

       --replace
	      Replace the current window manager with xmonad

       --version
	      Display version of xmonad

       --verbose-version
	      Display detailed version of xmonad

   Default keyboard bindings
       mod-shift-return
	      Launch terminal

       mod-p  Launch dmenu

       mod-shift-p
	      Launch gmrun

       mod-shift-c
	      Close the focused window

       mod-space
	      Rotate through the available layout algorithms

       mod-shift-space
	      Reset the layouts on the current workspace to default

       mod-n  Resize viewed windows to the correct size

       mod-tab
	      Move focus to the next window

       mod-shift-tab
	      Move focus to the previous window

       mod-j  Move focus to the next window

       mod-k  Move focus to the previous window

       mod-m  Move focus to the master window

       mod-return
	      Swap the focused window and the master window

       mod-shift-j
	      Swap the focused window with the next window

       mod-shift-k
	      Swap the focused window with the previous window

       mod-h  Shrink the master area

       mod-l  Expand the master area

       mod-t  Push window back into tiling

       mod-comma
	      Increment the number of windows in the master area

       mod-period
	      Deincrement the number of windows in the master area

       mod-b  Toggle the status bar gap

       mod-shift-q
	      Quit xmonad

       mod-q  Restart xmonad

       mod-[1..9]
	      Switch to workspace N

       mod-shift-[1..9]
	      Move client to workspace N

       mod-{w,e,r}
	      Switch to physical/Xinerama screens 1, 2, or 3

       mod-shift-{w,e,r}
	      Move client to screen 1, 2, or 3

       mod-button1
	      Set the window to floating mode and move by dragging

       mod-button2
	      Raise the window to the top of the stack

       mod-button3
	      Set the window to floating mode and resize by dragging

Examples
       To use xmonad as your window manager add to your ~/.xinitrc file:

	      exec xmonad

Customization
       xmonad is customized in ~/.xmonad/xmonad.hs, and then restarting with mod-q.

       You can find many extensions to the core feature set in the xmonad- contrib  package,  available  through  your	package  manager  or  from
       xmonad.org (http://xmonad.org).

   Modular Configuration
       As  of  xmonad-0.9, any additional Haskell modules may be placed in ~/.xmonad/lib/ are available in GHC's searchpath.  Hierarchical modules
       are supported: for example, the file ~/.xmonad/lib/XMonad/Stack/MyAdditions.hs could contain:

	      module XMonad.Stack.MyAdditions (function1) where
		  function1 = error "function1: Not implemented yet!"

       Your xmonad.hs may then import XMonad.Stack.MyAdditions as if that module was contained within xmonad or xmonad-contrib.

Bugs
       Probably.  If you find any, please report them to the bugtracker (http://code.google.com/p/xmonad/issues/list)

xmonad-0.10							   25 October 09							 xmonad(1)
All times are GMT -4. The time now is 08:15 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy