Had an idea tonight which could really enhance shell scripting for me.
Yes I am aware there could be difficulties but......
Creating a C script inside the shell script to do a task, (a simple text print to stdout in
this example), compiling it on the fly, making sure it is executable and then calling it
as part of the script...
Of course one would have to develop and fully test the C code first before inserting it
into a shell script and there may be some difficulties on fairly complex C scripts to
insert into said shell script but nevertheless this looks mighty interesting...
This is using OSX 10.7.5, default bash terminal and for OSX users XCode will need
to be installed from the Apple site before "gcc" can be used as Apple do not include
this part of the OS as standard. It is free and takes little time to get it...
Not tried on Linux and other *NIX flavours but there is no reason why it will not work.
Results:-
Enjoy the supreme flexibility of the shell...
Just asking, isnt chmod 755 cscript just setting 'ownerships' of the file, as in, who may access/execute the file.
Rather than chmod +x cscript which would make it executeable.
Good point, just a quirk of mine...
As the working idea is released as Public Domain then the choice is yours...
I am not sure what use a shell-specific hard core executable would be to others
on any specific system hence I limited execution to the owner of said script...
Just asking, isnt chmod 755 cscript just setting 'ownerships' of the file, as in, who may access/execute the file.
Rather than chmod +x cscript which would make it executeable.
Or am i mixing something?
The chmod utility does not set ownerships; it sets modes. Both of the above commands set the execute bits on for the file's owner, group, and for the world.
Furthermore, if the compilation was successful, the compiler will make a.out (or whatever output file was designated) executable. So, the chmod is unnecessary. (If the compilation was not successful, changing the mode won't make it execute successfully until you fix the source and rebuild it successfully.)
And, if there are other compilations that could be happening in parallel in the same directory (and to avoid an extra step, even if there aren't), it would be easier to replace:
with:
or:
These 2 Users Gave Thanks to Don Cragun For This Post:
Having (a little) time in the train, trying to make it multi functional:
Now edited at home on windows, took more time to write on the phone than expected... + copy-paste is a pain.
Going to try now (as if i had written all on the phone), gotta reboot to linux first though.
Have fun
EDIT:
Script fixed now, saved as ~./local/bin/compile with execution flag set, it outputs as:
Beeing aware, no compile arguments would be passed as of now, thats up to you to change/add if desired.
Hi all,
I am calling a zsh script from batch file .
This zsh just removes the trigger file in a particular directory.File name is passed as a parameter from the batch file Problem is this batch is called in multiple other batch files and sometimes system says file cant be used as it is used... (4 Replies)
Hi,
I have an old HPUX 10.20 server running Informix 7.23
I need to dump the database to get it off that hardware before it dies.
Unfortunately there is insufficient local diskspace to do so.
I have set up a linux box with sufficient disk onto which I can export the database.
Having... (1 Reply)
Hi group,
I am very beginner in shell scripting and self learning.
I am trying to create and executable script to run awk from user defined variables.
e.g. suppose from a given file I want to delete some rows or some columns
We need to repeat this process for many files. Thus I was... (4 Replies)
Hi Friends,
I have a shell script which does some operations etc, would it be possible to create an executable file out from this shell script? meaning the executable file is not editable, thus the source code will not be visible to other users for copyright reasons.
Please help, thanks! (1 Reply)
I've seen the executable open in the application OmniOutliner, can I create an executable with this app? I'd like to be able to create the unix executable and insert it into terminal, but I'm not sure if the Omni app will allow me to create it.
Any one have any ideas or possibly familiar with... (10 Replies)
hello Folks,
once we compile any C code on Linux, we run the code using "./a.out"..
but can we have an executable for every program so that we can run the code directly without compiling the code every time.
just run the executable and get the output!
Thanks! (7 Replies)
I want to move and compress a big export file.
Like mv file_exp /filesystem/file_exp |compress
The file system is too small to compress and move with 2 steps.
What is the best command for me. I'm running solaris.
:confused: (1 Reply)
Hi,
I am trying to run simple client server c program in unix.At the compling stage server is creating an executable but the client is not.
below is the link to the source codes:
http://www.cs.rpi.edu/courses/sysprog/sockets/server.c
http://www.cs.rpi.edu/courses/sysprog/sockets/client.c
... (2 Replies)