Slide 1
Most trusted JOB oriented professional program
DevOps Certified Professional (DCP)

Take your first step into the world of DevOps with this course, which will help you to learn about the methodologies and tools used to develop, deploy, and operate high-quality software.

Slide 2
DevOps to DevSecOps – Learn the evolution
DevSecOps Certified Professional (DSOCP)

Learn to automate security into a fast-paced DevOps environment using various open-source tools and scripts.

Slide 2
Get certified in the new tech skill to rule the industry
Site Reliability Engineering (SRE) Certified Professional

A method of measuring and achieving reliability through engineering and operations work – developed by Google to manage services.

Slide 2
Master the art of DevOps
Master in DevOps Engineering (MDE)

Get enrolled for the most advanced and only course in the WORLD which can make you an expert and proficient Architect in DevOps, DevSecOps and Site Reliability Engineering (SRE) principles together.

Slide 2
Gain expertise and certified yourself
Azure DevOps Solutions Expert

Learn about the DevOps services available on Azure and how you can use them to make your workflow more efficient.

Slide 3
Learn and get certified
AWS Certified DevOps Professional

Learn about the DevOps services offered by AWS and how you can use them to make your workflow more efficient.

previous arrow
next arrow

Whats the difference between running a shell scrip

scmuser created the topic: Whats the difference between running a shell scrip
Whats the difference between running a shell script as ./script.sh and sh script.sh

have a script that looks like this

#!/bin/bash

function something() {
echo “hello world!!”
}

something | tee logfile

I have set the execute permission on this file and when I try running the file like this

$./script.sh

it runs perfectly fine, but when I run it on the command line like this

$sh script.sh

It throws up an error. Why does this happen and what are the ways in which I can fix this.

scmuser replied the topic: Re:Whats the difference between running a shell scrip
Running it as ./script.sh will make the kernel read the first line (the shebang), and then invoke bash to interpret the script. Running it as sh script.sh uses whatever shell your system defaults sh to (on Ubuntu this is Dash, which is sh-compatible, but doesn’t support some of the extra features of Bash).

You can fix it by invoking it as bash script.sh, or if it’s your machine you can change /bin/sh to be bash and not whatever it is currently (usually just by symlinking it – rm /bin/sh && ln -s /bin/bash /bin/sh). Or you can just use ./script.sh instead if that’s already working 😉

Rajesh Kumar
Follow me
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x