Sponsored Content
Top Forums Shell Programming and Scripting BASH: variable and function scope and subscripts Post 302858981 by cero on Wednesday 2nd of October 2013 04:43:12 AM
Old 10-02-2013
This is not completely correct:
"When a script is called by executing the file, it is executed in the shell of the caller. (not sure how to check this)"

Not sure what you mean with "called by executing the file", but unless you source it a script starts a subshell which terminates when the script ends. That's why functions and variables are not defined after execution (see jims post).
This User Gave Thanks to cero For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

$0 scope in function and calling script

Hi folks, I'm just running through an oreilly korn shell book but have witnessed an output difference on my own unix machine and the output provided in the book. Can anyone help? create a script called ascript as follows: function afunc { print in function $0: $1 $2 var1="in... (16 Replies)
Discussion started by: beckett
16 Replies

2. Shell Programming and Scripting

Bash: how to call function having it's name in variable?

Hello. Looking for a method of modularizing my bash script, I am stuck with such a problem. For example, I have: MODULE_NAME="test" FUNCTION_NAME="run" How do I can a function with name test_run? (4 Replies)
Discussion started by: FractalizeR
4 Replies

3. Shell Programming and Scripting

scope of the variable - Naga

Hi All, I am new to unix shell scripting, in the below script "num" is an input file which contains a series of numbers example : 2 3 5 8 I want to add the above all numbers and want the result finally outside the while loop. it prints the value zero instead of the actual expected... (13 Replies)
Discussion started by: nagnatar
13 Replies

4. Shell Programming and Scripting

variable scope

Hi, I want to know about the variable scope in shell script. How can we use the script argument inside the function? fn () { echo $1 ## I want this argument should be the main script argument and not the funtion argument. } also are there any local,global types in shell script? if... (3 Replies)
Discussion started by: shellwell
3 Replies

5. Shell Programming and Scripting

Scope of exported function

Hi I'm hoping someone can tell me how to extend the scope of an exported function in the korn shell. I have written a function in a file that I dot in from my .kshrc file and it works fine. However I would like this function to be available to anyone in a certain group on the machine... (10 Replies)
Discussion started by: steadyonabix
10 Replies

6. UNIX for Dummies Questions & Answers

Bash loops and variable scope

Hi All, I've been researching this problem and I am pretty sure that the issue is related to the while loop and the piping. There are plenty of other threads about this issue that recommend removing the pipe and using redirection. However, I haven't been able to get it working using the ssh and... (1 Reply)
Discussion started by: 1skydive
1 Replies

7. Shell Programming and Scripting

Variable scope in bash

Hello! Before you "bash" me with - Not another post of this kind Please read on and you will understand my problem... I am using the below to extract a sum of the diskIO on a Solaris server. #!/bin/sh PATH=/usr/bin:/usr/sbin:/sbin; export PATH TEMP1="/tmp/raw-sar-output.txt$$"... (3 Replies)
Discussion started by: haaru
3 Replies

8. Programming

Variable Scope in Perl

I have to admit that i have not used Perl at all and this is a singular occasion where i have to patch an existing Perl script. I dearly hope i do not have to do it again for the next 15 years and therefore try to avoid having to learn the programming language in earnest. The OS is AIX 7.1, the... (2 Replies)
Discussion started by: bakunin
2 Replies

9. Shell Programming and Scripting

Bash function using variable in it syntax error

The below bash function uses multiple variables CODING, SAMPLE, SURVEY, andvariant in it. The user selects the cap function and details are displayed on the screen using the $SURVEY variable, the directory is changed to $SAMPLE and the samples.txt is opened so the user can select the sample to... (6 Replies)
Discussion started by: cmccabe
6 Replies

10. UNIX for Beginners Questions & Answers

Bash Variable scope - while loop while reading from a file

Cope sample1: test.sh i=0 echo " Outside loop i = $i " while do i=$(( $i + 1)) echo "Inside loop i = $i " done echo " Out of loop i is : $i " When run output : Outside loop i = 0 Inside loop i = 1 Inside loop i = 2 Inside loop i = 3 Inside loop i = 4 Inside loop i = 5 Inside... (8 Replies)
Discussion started by: Adarshreddy01
8 Replies
FIREHOL(1)						      General Commands Manual							FIREHOL(1)

NAME
firehol - An easy to use but powerful iptables stateful firewall SYNOPSIS
firehol start|try|stop|restart|condrestart|status|panic|save|debug|helpme firehol configfile [start|debug|try] firehol nothing DESCRIPTION
firehol is an iptables firewall generator producing stateful iptables packet filtering firewalls, on Linux hosts and routers with any num- ber of network interfaces, any number of routes, any number of services served, any number of complexity between variations of the services (including positive and negative expressions). firehol is a language to express firewalling rules, not just a script that produces some kind of a firewall. The goals of firehol are: o Being as easy as possible Independently of the security skills he/she has, firehol allows to create and understand complex firewalls in just a few seconds. The configuration files are very easy to type and read. o Being as secure as possible. By allowing explicitly only the wanted traffic to flow firehol secures your system. firehol produces stateful rules for any service or protocol, in both directions of the firewall. o Being as open as possible. Althoug firehol is pre-configured for a large number of services, you can configure any service you like and firehol will turn it into a client, a server, or a router. o Being as flexible as possible. firehol can be used by end users and guru administrators requiring extremely complex firewalls. firehol configuration files are BASH scripts; you can write in them anything BASH accepts, including variables, pipes, loops, conditions, calls to external programs, run other BASH scripts with firehol directives in them, etc. o Being as simple as possible. firehol is easy to install on any modern Linux system; only one file is required, no compilations involved. Options start Activates the firewall configuration. The configuration is expected to be found in /etc/firehol/firehol.conf. try Activates the firewall, but waits until the user types the word commit. If this word is not typed within 30 seconds, the previous firewall is restored. stop Stops a running iptables firewall by running /etc/init.d/iptables stop. This will allow all traffic to pass unchecked. restart This is an alias for start and is given for compatibility with /etc/init.d/iptables. condrestart Starts the firehol firewall only if it is not already active. It does not detect a modified configuration file, only verifies that firehol has been started in the past and not stopped yet. status Shows the running firewall, as in /sbin/iptables -nxvL | less panic It removes all rules from the running firewall and then it DROPs all traffic on all iptables tables (mangle, nat, filter) and pre- defined chains (PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING), thus blocking all IP communication. DROPing is not done by changing the default policy to DROP, but by adding just one rule per table/chain to drop all traffic, because the default iptables scripts sup- plied by many systems (including RedHat 8) do not reset all the chains to ACCEPT when starting (firehol resets them correctly). When activating panic mode, firehol checks for the existance of the SSH_CLIENT shell environment variable (set by SSH). If it find this, then panic mode will allow the established SSH connection specified in this variable to operate. Notice that in order for this to work, you should have su without the minus (-) sign, since su - overwrites the shell variables and therefore the SSH_CLIENT variable is lost. Alternativelly, after the panic argument you can specify an IP address in which case all established connections between this IP address and the host in panic will be allowed. save Start the firewall and then save it using /sbin/iptables-save to /etc/sysconfig/iptables. Since v1.64, this is not implemented using /etc/init.d/iptables save because there is a bug in some versions of iptables-save that save invalid commands (! --uid-owner A is saved as --uid-owner !A) which cannot be restored. firehol fixes this problem (by saving it, and then replacing --uid-owner ! with ! --uid-owner). Note that not all firehol firewalls will work if restored with: /etc/init.d/iptables start because FireHOL handles kernel modules and might have queried RPC servers (used by the NFS service) before starting the firewall. Also, firehol automatically checks current ker- nel configuration for client ports range. If you restore a firewall using the iptables service your firewall may not work as expected. debug Parses the configuration file but instead of activating it, it shows the generated iptables statements. explain Enters an interactive mode where it accepts normal configuration commands and presents the generated iptables commands for each of them, together with some reasoning for its purpose. Additionally, it automatically generates a configuration script based on the suc- cessfull commands given. When in directive mode, firehol has the following special commands: o help Present some help o show Present the generated firehol configuration o quit Exit interactive mode and quit firehol helpme Tries to guess the firehol configuration needed for the current machine. firehol will not stop or alter the running firewall. The con- figuration file is given in the standard output of firehol, thus /etc/init.d/firehol helpme >/tmp/firehol.conf will produce the output in /tmp/firehol.conf. The generated firehol configuration should and must be edited before used on your systems. You are required to take many decisions and the comments of the generated file will instruct you for many of them. configfile A different configuration file. If no other argument is given, the configuration file will be tried (default = try). Otherwise the argument next to the filename can be one of start, debug, try. nothing Presents help about firehol usage. FILES
/etc/firehol/firehol.conf AUTHOR
firehol written by Costa Tsaousis <costa@tsaousis.gr>. Man page written by Marc Brockschmidt <marc@marcbrockschmidt.de>. SEE ALSO
firehol.conf(5), iptables(8), bash(1) 2003-04-30 FIREHOL(1)
All times are GMT -4. The time now is 02:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy