09-07-2015
Quote:
Originally Posted by
RudiC
To make scripts executable, you need to set its directory entry's "executable permissions" for the intended users/persons, "owner", "group", or "others". Enter chmod (all lower case) into the shell for this. Consider well which target users should receive that permission; in above sample you give it to all three groups.
nano is one among other editors used to modify scripts. It has nothing to do with the execution of a script.
The so called "shebang" within the script text is not mandatory but helps the shell decide which program to use to run the script.
I wanted to use nano as the editor, would I just write chmod in the editor and do it like that?
Thanks
9 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
I've got a file named jdictd.sh containing the following:
--- begin file contents ---
#! /bin/csh
echo I\'m running!
java -cp jdictd.jar org.dict.server.JDictd data/dict.ini
# Use the following line instead if JRE 1.1 is used
# jre -cp jdictd.jar org.dict.server.JDictd data/dict.ini
---end... (2 Replies)
Discussion started by: ropers
2 Replies
2. AIX
Hi All:
I am a newbie.
I have shell script and bunch of java jar files and I want to give one single executable file (may be .bin).
Ex: I have test.sh, jar1.jar, jar2.jar. I have to make process.xxx
When we run "process.xxx" it will run the "test.sh" script which inturn uses jar1.jar and... (0 Replies)
Discussion started by: laxman123
0 Replies
3. UNIX for Dummies Questions & Answers
Hello,
I am very new to UNIX and I have been learning about writing scripts and making them executable. I created a script called myscript. It has three lines:
#! /bin/sh
# This is my first shell script
echo friendsjustfriends
Now I try to run it using the sh command and it works
Next I... (4 Replies)
Discussion started by: rohitx
4 Replies
4. UNIX for Dummies Questions & Answers
making a script in vi to create a shell script called wherearethey by entering the following script:
echo -n "Who are you looking for: "read userif then list=`w | grep $user | cut -c19-30` if then echo "The user $user is logged in from $list" else echo "The user $user is not logged in... (3 Replies)
Discussion started by: curtner
3 Replies
5. Shell Programming and Scripting
Guys I placed
#!path/awk -f
placed awk script
and used $1 to call 1st inputfile inside the script.
But some where I did mistake. Could you please help me run this script as executable
I forgot to mention I also used BEGIN before placing awk script. But nothing worked out.
Script
... (2 Replies)
Discussion started by: repinementer
2 Replies
6. UNIX for Dummies Questions & Answers
Hi guys, i'm trying to make a file called 'run-all-tests' executable but it is not letting me for some reason. I am presented with the following error: chmod: cannot access `./run-tests': No such file or directory
Basically i have a folder called ex3 and within that there are task folders:... (11 Replies)
Discussion started by: Shyamz1
11 Replies
7. Shell Programming and Scripting
Hello,
I have a perl program called snp_hwe.pl
I have another program called hwe_test.run which contains the following:
for file in *.inp
do
cp $file genotype_counts_c.txt
./snp_hwe.exe > $file'.res'
done
I want to change my perl program to an executable program while changing... (3 Replies)
Discussion started by: Homa
3 Replies
8. UNIX for Advanced & Expert Users
I should make an executable on our server, and are having some problem (I changed this question cause I found out that anser).
I'm getting this error when trying to do make:
In file included from...
/usr/include/sys/file.h:161: error: expected specifier-qualifier-list before 'u_int'
*** Error... (1 Reply)
Discussion started by: 244an
1 Replies
9. Shell Programming and Scripting
Does it possible to make some bash script automatic to be a executable when transfered to another pc...? (5 Replies)
Discussion started by: tomislav91
5 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)