07-16-2013
Self-modifying code isn't a good idea in general because:
- It is harder to maintain. (In your case you're trying to modify lines 1-9 in your shell script. If someone adds a couple of more lines to your script [such as a comment saying what the script does]; the modification no longer works.)
- If the size of the file being executed changes while it is running (which is true with what you were doing) and the size of the file is more than one buffer full when when the interpreter reads in the program, the interpreter may skip some characters in the script or read multiple copies of some characters in the script.
- If something goes wrong while updating the script (e.g., running out of space), you may end up with a program that only has half of your changes (leaving you with no obvious way to get back to where you were before you started making changes nor to get to where you wanted to end up).
- If you have to restore a back-up copy of your script, will it do what you want?
This User Gave Thanks to Don Cragun For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I have two shell variables $t1 and $t2 which I need to pass to a function in a shell script. The function will do some computation with those two variables and echo the resultant. But I do not know how to pass teh arguments.
The function written is
f1()
{......
........
}
What should... (3 Replies)
Discussion started by: preetikate
3 Replies
2. Shell Programming and Scripting
Hi,
I have a shell script called ftp.sh which is running continously in background.
I tried passing arguments to this script but it did not worked out.
Below is ftp.sh script. Please help me
case $param in
start) sleep_func "300"
echo "!ksh $scr_ddir/ftp.sh... (1 Reply)
Discussion started by: bhargav20
1 Replies
3. Shell Programming and Scripting
Hi,
I have a my script here--
print "The Perl Script does the User health check and system health check...\n";
print "---------------------------------------------------------------------\n";
# use strict;
my($OS);
$OS = $^O;
# need to test @ARGV before GetOptions shifts it
if (@ARGV... (1 Reply)
Discussion started by: namishtiwari
1 Replies
4. UNIX for Advanced & Expert Users
Hey guys,
I have an interactive script that is quite critical to our production environmentl thus updating it to run non-interactively is not an option.
The script takes a varying number of arguments, which it ques untill user confirm end of data entry
e.g of user input :
1
2
y ... (3 Replies)
Discussion started by: geek.ksa
3 Replies
5. Shell Programming and Scripting
Hi,
I want to run a target of makfile using script by passing different arguments to it again n again. I i need to grep certain things from the log file.
eg
make abc KAB=8 BAC=8 >& KAB_BAC.log
grep "timeA" KAB_BAC.log
grep "timeB" KAB_BAC.log
(i want to store the difference of the two time... (0 Replies)
Discussion started by: vdhingra123
0 Replies
6. Shell Programming and Scripting
hi,
Is it possible to pass arguments to a sftp script and use those arguments in the program?
for example
sftp_script
FILENAME=$1
#!/usr/bin/expect
spawn /usr/bin/sftp abc@ftp.abc.com
expect "abc@ftp.abc.com's password:"
send "pass\r"
expect "sftp>"
send "mput $FILENAME\r"... (9 Replies)
Discussion started by: Little
9 Replies
7. Shell Programming and Scripting
I've tried to find a solution to this, but I"m stumped.
OS - RH Linux 5.9
I have a bash script <myProgram.sh> that gets executed manually and creates a small response file. I'm trying to automate the running of this script.
When myProgram.sh runs, it prompts the user to enter 2 pieces of... (13 Replies)
Discussion started by: progkcp
13 Replies
8. Shell Programming and Scripting
Hi all,
I am working on a project, in which I have to connect to Bluetooth low energy device. I am able to connect and do data transfer from command line. But I want to do from script
Here is my script
#!/bin/bash
#sudo hcitool -i hci0 lescan
sleep 1
sudo hcitool -i hci0 lecc --random... (8 Replies)
Discussion started by: nithin@embdes
8 Replies
9. Shell Programming and Scripting
Shell Script Gurus,
I am writing a shell script which needs User ID's to pass as an Arguments in command line while executing.
Can this be doable? I've never done this, If you give a sample script that would be helpful, Thanks. (1 Reply)
Discussion started by: shekar777
1 Replies
10. Shell Programming and Scripting
suppose i have a perl script that is normally run this way:
./checkdisk.pl -H hostname -w 40 -c 80
but, for whatever reason, i cannot run the script directly as it should. But i can cat it through pipe. How can i pass the arguments "-H hostname -w 40 -c 80"?
so this is what i'm doing,... (6 Replies)
Discussion started by: SkySmart
6 Replies
RBASH(1) General Commands Manual RBASH(1)
NAME
rbash - restricted bash, see bash(1)
RESTRICTED SHELL
If bash is started with the name rbash, or the -r option is supplied at invocation, the shell becomes restricted. A restricted shell is
used to set up an environment more controlled than the standard shell. It behaves identically to bash with the exception that the follow-
ing are disallowed or not performed:
o changing directories with cd
o setting or unsetting the values of SHELL, PATH, ENV, or BASH_ENV
o specifying command names containing /
o specifying a file name containing a / as an argument to the . builtin command
o specifying a filename containing a slash as an argument to the -p option to the hash builtin command
o importing function definitions from the shell environment at startup
o parsing the value of SHELLOPTS from the shell environment at startup
o redirecting output using the >, >|, <>, >&, &>, and >> redirection operators
o using the exec builtin command to replace the shell with another command
o adding or deleting builtin commands with the -f and -d options to the enable builtin command
o using the enable builtin command to enable disabled shell builtins
o specifying the -p option to the command builtin command
o turning off restricted mode with set +r or set +o restricted.
These restrictions are enforced after any startup files are read.
When a command that is found to be a shell script is executed, rbash turns off any restrictions in the shell spawned to execute the script.
SEE ALSO
bash(1)
GNU Bash-4.0 2004 Apr 20 RBASH(1)