Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Source shell script

Posted on 2015-01-08
9
Medium Priority
?
110 Views
Last Modified: 2015-01-19
Hi Experts,

1)Is it possible to get the flag status of one script to another.

Suppose.

1.sh
#!/bin/sh
source 2.sh
(If [Flag = True ] )&& (source 3.sh)

Open in new window


2.sh
#!/bin/sh
Some code here
Flag = True

Open in new window


2) Please share some knowledge on Global variables and set command.I was bit confused checking the tutorials .

Thanks
0
Comment
Question by:magento
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
9 Comments
 
LVL 48

Accepted Solution

by:
Tintin earned 1000 total points
ID: 40539551
There's a few different ways.

1.   Sourcing a file (like you have), eg:

script1.sh

#!/bin/bash
source /path/to/script2.sh

if [ $flag = true ]
then
      ...
fi

Open in new window


script2.sh

flag=true

Open in new window



or by exporting variables, eg:

script1.sh

#!/bin/bash

export flag=true
/path/to/script2.sh

Open in new window


script2.sh

#!/bin/bash
echo "flag=$flag"

Open in new window


or by passing variables, eg:

script1.sh

#!/bin/bash

/path/to/script2.sh true

Open in new window


script2.sh

#!/bin/bash
flag=$1
echo "flag=$flag"

Open in new window

0
 
LVL 5

Author Comment

by:magento
ID: 40540540
Thank you so much Tintin.

If i install ubuntu , can i able to work on terminals like we work in putty ? eg.creating script, test it .
0
 
LVL 40

Assisted Solution

by:omarfarid
omarfarid earned 1000 total points
ID: 40541032
one thing about variables to know.

You can pass variables to a script if they are exported.

source will run the script within the current script.

Please run below scripts and see difference

1.sh:

var1=2
var2=3
export var1

2.sh:

echo $var1
echo $var2
var1=1
var3=4

3.sh:

1.sh
2.sh
echo $var1
echo $var2
echo $var3

4.sh:

source 1.sh
source 2.sh
echo $var1
echo $var2
echo $var3
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 40

Expert Comment

by:omarfarid
ID: 40541039
for your other question, yes you can run terminal either on the console of the system or via putty or X windows and run scripts, etc.
0
 
LVL 5

Author Comment

by:magento
ID: 40543095
Omarfarid,

Please tell me how to open the terminal .

Once i logged in i see a horizontal menu available , where i can see the terminal options?

Thanks
0
 
LVL 48

Expert Comment

by:Tintin
ID: 40543462
Depending on your window manager, you should be able to just start typing 'terminal' to bring up the appropriate icon to click on.
0
 
LVL 40

Expert Comment

by:omarfarid
ID: 40543618
It depend on your interface. Please see link below:

https://help.ubuntu.com/community/UsingTheTerminal
0
 
LVL 5

Author Closing Comment

by:magento
ID: 40557166
Thanks Tintin and Omarfarid for your help .
0
 
LVL 40

Expert Comment

by:omarfarid
ID: 40557214
Welcome
0

Featured Post

What Is Blockchain Technology?

Blockchain is a technology that underpins the success of Bitcoin and other digital currencies, but it has uses far beyond finance. Learn how blockchain works and why it is proving disruptive to other areas of IT.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Background Still having to process all these year-end "csv" files received from all these sources (including Government entities), sometimes we have the need to examine the contents due to data error, etc... As a "Unix" shop, our only readily …
In part one, we reviewed the prerequisites required for installing SQL Server vNext. In this part we will explore how to install Microsoft's SQL Server on Ubuntu 16.04.
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses

721 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question