05-06-2016
Quote:
Originally Posted by
cmccabe
I will try out those changes and I apologize for not explaining "the script doesn't work". The
bash executes and creates the
.txt files but when each
.txt file is searched the
bash stalls. There is no error it just does not finish completely. I will change the script, execute, and post back. Thank you very much
.
It probably stalls, because it is waiting for input from standard input, since you did not provide the file name in the grep command, per Don's note.
This User Gave Thanks to gandolf989 For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
we have this script that stops, starts and monitor process scheduler. prcs_control. this script runs perfectly when executed by ps_user.
we are now creating a new script that will run this script and is executed by root. this script needs to execute the prcs_control as ps_user because root can... (1 Reply)
Discussion started by: tads98
1 Replies
2. Shell Programming and Scripting
Hi All,
Am using the below command to start my application using the root user
su - bin -c "/home/bin/test/start.sh"
but am getting the error becaue i have set some environment varibales in bin's .profile
when i execute the command start.sh by logging directly into bin account it's... (9 Replies)
Discussion started by: ravi.sri24
9 Replies
3. Shell Programming and Scripting
Below is my script code which filters failed logins from existing and non-existing users from the server. The problem is, it takes longer to execute and complete than expected. Anyone here can edit the script to speed up its execution.
#!/bin/bash
LIST=`cat $1`
for i in $LIST
do... (10 Replies)
Discussion started by: linuxgeek
10 Replies
4. Windows & DOS: Issues & Discussions
Hi,
Batch script gets executed without any error, but on execution some of the partial contents of the batch file gets appended at the end of the file which is currently in execution, hence the script tries to execute again for the second time , which should not happen.
How to get it... (5 Replies)
Discussion started by: milink
5 Replies
5. Shell Programming and Scripting
I have wrote a script to get a very large encrypted file from a remote ftp server to a local debian box.
The file downloads successfully, but the script never exits, or quits. None of code executes after the ftp get command.
The file is approx 291M
Here is the code:
!/bin/sh... (3 Replies)
Discussion started by: jstrahm
3 Replies
6. Shell Programming and Scripting
I have following script to send email when a USB is attached.
#!/bin/bash
NUMBER=`/bin/cat /u/numberoflines`
LINES=`/usr/bin/wc -l < /var/log/messages`
DIFFERENCE=$(($LINES-$NUMBER))
if ; then
tail -n $DIFFERENCE /var/log/messages |while read line
do
if $( echo $line | grep --quiet... (2 Replies)
Discussion started by: kashif.live
2 Replies
7. UNIX for Dummies Questions & Answers
Hi All,
I am calling a shell script from another shell script, however, it only executes part of it (the echo commands only). What could be some causes for that?
For example:
ShellScriptA.sh:
...
...
...
. ShellScriptB.sh
ShellScriptB.sh contents:
echo date
echo... (7 Replies)
Discussion started by: DBnixUser
7 Replies
8. Shell Programming and Scripting
I want to run a script that calls remote ssh and if it gets hung, I want to be able to kill that part of the script and run another command in the script
for example I have a statement like this:
if ];
then
export tapes=$(for tape in $(su - nacct -c 'ssh remote1 "cat... (1 Reply)
Discussion started by: newbie2010
1 Replies
9. Shell Programming and Scripting
I have a shell script scheduled in cron job to run at every 1 minute which transfers files to remote machine and then move the files to backup folder.
cd /u01/app/ftp_tmp
sftp user@hostname <<-EOF
cd /home/user/ftp
mput *
bye
EOF
mv /u01/app/ftp_tmp/* /u01/app/ftp_bkp
Now the problem is... (6 Replies)
Discussion started by: Bhavi
6 Replies
10. Shell Programming and Scripting
The below bash works great, except I can not seem to delete the original file $f from the directory. Thank you :)
For example, after the bash executes there are 8 files in the directory:
123.txt (original file)
123_remove.txt
123_index.txt
123_final.txt
456.txt (original file)... (11 Replies)
Discussion started by: cmccabe
11 Replies
LEARN ABOUT CENTOS
shell-quote
SHELL-QUOTE(1) User Contributed Perl Documentation SHELL-QUOTE(1)
NAME
shell-quote - quote arguments for safe use, unmodified in a shell command
SYNOPSIS
shell-quote [switch]... arg...
DESCRIPTION
shell-quote lets you pass arbitrary strings through the shell so that they won't be changed by the shell. This lets you process commands
or files with embedded white space or shell globbing characters safely. Here are a few examples.
EXAMPLES
ssh preserving args
When running a remote command with ssh, ssh doesn't preserve the separate arguments it receives. It just joins them with spaces and
passes them to "$SHELL -c". This doesn't work as intended:
ssh host touch 'hi there' # fails
It creates 2 files, hi and there. Instead, do this:
cmd=`shell-quote touch 'hi there'`
ssh host "$cmd"
This gives you just 1 file, hi there.
process find output
It's not ordinarily possible to process an arbitrary list of files output by find with a shell script. Anything you put in $IFS to
split up the output could legitimately be in a file's name. Here's how you can do it using shell-quote:
eval set -- `find -type f -print0 | xargs -0 shell-quote --`
debug shell scripts
shell-quote is better than echo for debugging shell scripts.
debug() {
[ -z "$debug" ] || shell-quote "debug:" "$@"
}
With echo you can't tell the difference between "debug 'foo bar'" and "debug foo bar", but with shell-quote you can.
save a command for later
shell-quote can be used to build up a shell command to run later. Say you want the user to be able to give you switches for a command
you're going to run. If you don't want the switches to be re-evaluated by the shell (which is usually a good idea, else there are
things the user can't pass through), you can do something like this:
user_switches=
while [ $# != 0 ]
do
case x$1 in
x--pass-through)
[ $# -gt 1 ] || die "need an argument for $1"
user_switches="$user_switches "`shell-quote -- "$2"`
shift;;
# process other switches
esac
shift
done
# later
eval "shell-quote some-command $user_switches my args"
OPTIONS
--debug
Turn debugging on.
--help
Show the usage message and die.
--version
Show the version number and exit.
AVAILABILITY
The code is licensed under the GNU GPL. Check http://www.argon.org/~roderick/ or CPAN for updated versions.
AUTHOR
Roderick Schertler <roderick@argon.org>
perl v5.16.3 2010-06-11 SHELL-QUOTE(1)