when running my script below


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting when running my script below
# 1  
Old 01-01-2006
when running my script below

as root on test files with
Code:
!#/bin/bash -x

I get my env echoed back to the screen, Have I wrote code that
is dangerous??
this dosen't show up if ran as non root user
heres what I get back:

Code:
test> ./rootf off
+ alias 'rm=rm -i'
+ alias 'cp=cp -i'
+ alias 'mv=mv -i'
+ '[' -f /etc/bashrc ']'
+ . /etc/bashrc
+++ id -gn
+++ id -un
+++ id -u
++ '[' root = root -a 0 -gt 99 ']'
++ umask 022
++ '[' '' ']'
+ wdir=/root/test
+ tmpd=/tmp
+ file=proftpd.conf
+ word=RootLogin off
+ word2=RootLogin on
+ tfile=temp.txt
+ msg1=Root Can Now FTP In
+ msg2=Root FTP Is Now Unavailable
+ msg3=You Must specifiy on or off
+ '[' off == on ']'
+ '[' off == off ']'
+ cd /root/test
+ cp -f proftpd.conf /tmp
+ sleep 1
+ sed -e 's/RootLogin on/RootLogin off/' proftpd.conf
+ sleep 1
+ mv -f /tmp/temp.txt /root/test/proftpd.conf
+ rm -f /tmp/proftpd.conf
+ echo 'Root FTP Is Now Unavailable'
Root FTP Is Now Unavailable

here is the complete code:
Code:
#!/bin/bash -x
#work directory
wdir="/root/test"

#temp directory
tmpd="/tmp"

#original file
file="proftpd.conf"

word="RootLogin off"

word2="RootLogin on"

#temp file
tfile="temp.txt"

#message-1
msg1="Root Can Now FTP In"

#message-2
msg2="Root FTP Is Now Unavailable"

#message-3
msg3="You Must specifiy on or off"

    if [ "$1" == on ]; 
       then
        cd $wdir
        cp -f $file $tmpd
        sed -e "s/$word/$word2/" $file > $tmpd/$tfile
        sleep 1
        mv -f $tmpd/$tfile $wdir/$file
        # rm -f $tmpd/$file
            echo "$msg1"
            
    elif [ "$1" == off ]; 
         then
          cd $wdir
          cp -f $file $tmpd
          sleep 1
          sed -e "s/$word2/$word/" $file > $tmpd/$tfile
          sleep 1
          mv -f $tmpd/$tfile $wdir/$file
          rm -f $tmpd/$file
            echo "$msg2"

     else 
          echo "$msg3"        
   fi

# 2  
Old 01-02-2006
debugging mode

you are using the debugging mode to run the script.....

remove the -x option from the shell and then run the script....
# 3  
Old 01-03-2006
yes, But what I was wondering is,
why the debug out put was showing the env for root, But it doesnt when ran as any other user
Thanks for your reply
# 4  
Old 01-03-2006
need clarification

i dont understand what u mean.....

"env" what u meant by that???? i dont understand that abbreviation. can u specify the line that u have a doubt with...
# 5  
Old 01-03-2006
sorry..
my shell environment gets echoed back at me..
Code:
test> ./rootf off
+ alias 'rm=rm -i'
+ alias 'cp=cp -i'
+ alias 'mv=mv -i'
+ '[' -f /etc/bashrc ']'
+ . /etc/bashrc
+++ id -gn
+++ id -un
+++ id -u
++ '[' root = root -a 0 -gt 99 ']'
++ umask 022
++ '[' '' ']'

# 6  
Old 01-04-2006
some suggestion

in the first line of your script, use #!/bin/bash rather than #!/bin/bash -x and then in your second line of the script give "set -x"

also start the script using bash <script name> or by setting the execute permission of the script and typing the script name alone...

1) change #!/bin/bash to #!/bin/bash -x in the first line and then include "set -x" as the second line of the script

2) a) execute by using bash <script name>
(or)
b) by setting execute permission and typing the script name alone
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Why script is running sometimes and not running sometimes?

Hi, I have a script which does couple of database connection and run some SELECT queries to get some output in the file. I am surprised to see :eek: that when i run my script some times it gives the desired out put and sometimes it shows some error :confused: . Suppose if i execute it say... (3 Replies)
Discussion started by: Sharma331
3 Replies

2. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

3. Shell Programming and Scripting

Shell Script for continuously checking status of a another script running in background, and immedia

Hi, I want to write a script which continuously checking status of a script running in background by nohup command. And if same script is not running then immediately start the script...please help.. i am using below command to run script nohup system_traps.sh & but in some... (9 Replies)
Discussion started by: ketanraut
9 Replies

4. Shell Programming and Scripting

Bash shell script to check if script itself is running

hi guys we've had nagios spewing false alarm (for the umpteenth time) and finally the customer had enough so they're starting to question nagios. we had the check interval increased from 5 minutes to 2 minutes, but that's just temporary solution. I'm thinking of implementing a script on the... (8 Replies)
Discussion started by: hedkandi
8 Replies

5. Shell Programming and Scripting

Problem running a program/script in the background from a script

Hi all, I have a script that calls another program/script, xxx, to run in the background. Supposedly this program at most should finish within five (5) minutes so after five (5) minutes, I run some other steps to run the script into completion. My problem is sometimes the program takes... (5 Replies)
Discussion started by: newbie_01
5 Replies

6. Shell Programming and Scripting

script for reading logs of a script running on other UNIX server

Hi, I have a script, running on some outside firwall server and it's log of success or failure is maintained in a file. I want to write a script which ftp that server and reads that file and checks the logs and if failure , I will send mail notification. Please let meknow if I am not... (1 Reply)
Discussion started by: vandana.parwani
1 Replies

7. Shell Programming and Scripting

Running a unix script(which is calling another script inside that) in background

Hi all, I am having a script ScriptA which is calling a script ScriptB in the same server and copying files to second server and have to execute one script ScriptC in the second server. THis First script ScriptA is the main script and i have to execute this process continously. for Keeping... (2 Replies)
Discussion started by: rohithji
2 Replies

8. Shell Programming and Scripting

Running a BATCH script from my korn script with multiparameters

I've this BATCH script to run from my korn script... The command is /usr/local/BATCH/runBatch.sh PARAM1 'PARAM2 -PARAM21 PARAM22' (runBatch takes parameter 1 = PARAM1 parameter 2 = 'PARAM2 -PARAM21 PARAM22' ) If i run this command from command line it just runs fine... ... (7 Replies)
Discussion started by: prash184u
7 Replies

9. Shell Programming and Scripting

How to stop a script running in remote server from local script

Hi, I have googled for quite some time and couldn't able to get what exactly I am looking for.. My query is "how to stop a shell script which is running inside a remote server, using a script"??? can any one give some suggestions to sort this out. (1 Reply)
Discussion started by: mannepalli
1 Replies

10. Solaris

Running from Shell Vs running from RC script

Hi, i have a script which need to do behave differently when run as a startup process from init.d/ rc2.d script and when run manually from shell. How do i distinguish whether my script is run by init process or by shell?? Will the command /proc/$$/psinfo | grep "myscript" work well???... (2 Replies)
Discussion started by: vickylife
2 Replies
Login or Register to Ask a Question