any explanation for thsi shell script behaviour


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting any explanation for thsi shell script behaviour
# 8  
Old 11-08-2001
I agree with rwb1959.

If you do this:

. ./myscript

It will source the script, not execute it. However, the following should be equivalent:

sh myscript
./myscript <- only one .

Back to the original question, type this from command line:

which sh

This will give you the path to sh. If it doesn't return, there is your problem. Next run:

echo $PATH

Do you see the path returned by "which" listed. If you don't, you will either have to add it to your PATH or run:

/(path from which)/sh myscript

I think this would be pretty unlikely but you might want to check anyway. Both ./myscript and sh myscript should work fine.
# 9  
Old 11-09-2001
Quote:
Originally posted by TioTony
However, the following should be equivalent:

sh myscript
./myscript <- only one .
Actually, these do work differently and how apparent the differences are depends on your kernel. When the trick of allowing the kernel itself to run a script first appeared, the suid and sgid bits were respected. With a kernel like that, "./myscript" could run with the effective uid or effective gid set according to the file's permissions. On the other hand, "sh ./myscript" will never run with alternate permissions.

This opened up a nasty security hole that could not be closed and most kernels these days no longer support suid/sgid shell scripts.

However the development of the fd psuedo-filesystem has provided a way to close that formerly unclosable hole. So it's possible that suid/sgid scripts may return. And in any event, I wouldn't bet the rent that no kernel currently running supports suid/sgid scripts.
# 10  
Old 11-09-2001
Network

Excuse me. I didn't read correctly.

I read " . ./script" just as " ./script" ... :-((
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script explanation

Hey, can someone explain me this script? i=0 while read WORT do echo $WORT|grep a>/dev/null || echo$WORT|grep B>dev/null || let i=$i+1 done echo $i The first lane initializie the variable i with the value of 0. The loop line has 3 different options because of ||. The only option I... (10 Replies)
Discussion started by: newuser21
10 Replies

2. Shell Programming and Scripting

What does this shell script do? Need in depth explanation please

Hi My friend wrote this particular script and won't tell me what it does, and when I run it I don't understand it. What does the entire script do with specifics please. Thanks Bob #!/bin/bash current=0 while ; do if ; then echo ${current} current=$((${current}+1)) fi done (1 Reply)
Discussion started by: shadowknight777
1 Replies

3. Shell Programming and Scripting

Korn shell behaviour in AIX

Hi, Consider the code snippet below: fun() { while read x do echo $x done < somefile_that_does_not_exists } fun echo I am here Korn shell on HPUX prints the message "I am here", while the behaviour is different on AIX korn shell. We do not get the message on AIX. Any... (5 Replies)
Discussion started by: 116@434
5 Replies

4. Solaris

Explanation of script

Hello Guys, can someone help explain the script below for me? I will really appreciate it. vi db_script #!/bin/sh echo .cron job run on.`date`> cronjob.txt df -h >> cronjob.txt echo welcome to home (2 Replies)
Discussion started by: cjashu
2 Replies

5. Shell Programming and Scripting

need an explanation on this script...

The following script will create a directory in a directory and will go on as many times as the number you will give in. I am trying to find out how it works ... can someone please help me with that? #!/bin/sh #create a variable and set it to 1 n=1 #start a loop as... (3 Replies)
Discussion started by: I-1
3 Replies

6. Shell Programming and Scripting

Shell Script Explanation

Hello, I have seen this script on this site. I understand most of it. However I am a bit stuck on the part in red. It appears to be expanding for file in *.zip do zipdir=${file%.*} mkdir $zipdir || echo "unable to create $zipdir" cp $file $zipdir || echo "unable to copy $file"... (3 Replies)
Discussion started by: jaysunn
3 Replies

7. UNIX for Dummies Questions & Answers

shell: reconcile language and sort behaviour

Hi Don't know if this is a dummy question, but let's give it a try. I yesterday had a problem with undefined behaviour in the sort shell command (I'm using bash), leading to different sort orders without apparent reasons. I resolved this by typing export LC_ALL="C" export LC_COLLATE="C"... (5 Replies)
Discussion started by: jossojjos
5 Replies

8. Shell Programming and Scripting

Explanation for interesting sed behaviour?

This is my first post so hi to you all. I have browsed these forums in the past and what a great community and resource this is! Thanks to all the contributors ... I look forward to being able to give something back. In the meantime, I have a little conundrum concerning sed. My very simple... (6 Replies)
Discussion started by: Gavster
6 Replies

9. Shell Programming and Scripting

Spaces behaviour in shell

Hello, I am a bit puzzled by the way my shell treats spaces in filenames. An example will be way clearer than any explanation I can make: $ ls test\ file\ with\ spaces test file with spaces $ var="test\ file\ with\ spaces" $ echo $var test\ file\ with\ spaces $ ls $var ls: cannot... (4 Replies)
Discussion started by: SDelroen
4 Replies

10. Shell Programming and Scripting

explanation for a script

Guys, was wondering what the meaning of the below bit is ? awk -F ' ' '{print $1 " " $2 ;}' $TEMPFILE | (rm -f $TEMPFILE; sed 's/$/ '"$box"'/g' > $TEMPFILE) Can anyone explain this in detail? what is the significance of rm -f $TEMPFILE here? What all IO/buffering happens here ?How the... (0 Replies)
Discussion started by: hashin_p
0 Replies
Login or Register to Ask a Question