Running O/S Commands

Does anyone know whether it is possible to run O/S commands from within a PL/SQL Program Unit? I have created a file within the procedure and would now like to ftp it to a different server. Is there a package that would allow me to do so within the Program Unit?
Thanks!

There is no built-in package available to run the OS commands.
USe external libraries to run OS commands, if your database supports.
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Chi:
Does anyone know whether it is possible to run O/S commands from within a PL/SQL Program Unit? I have created a file within the procedure and would now like to ftp it to a different server. Is there a package that would allow me to do so within the Program Unit?
Thanks!<HR></BLOCKQUOTE>
null

Similar Messages

  • How to run multiple DOS commands from a single Webutil Client_Host session?

    Hello all,
    I have a requirement where I need to create an interface with SVN from Forms for basic checkin-checkout of files.
    So, I've been trying to use webutil client_host to open a command line session and issue svn commands.
    For svn, sometimes I need to give multiple commands like change to a particular directory and then run an svn command.
    But client_host takes in only one command at a time and I'm unable to issue a series of DOS commands to perform
    a particular task.
    Is there a way to do this?
    Pls suggest.
    Regards,
    Sam

    First your original question... You can put more than one DOS command on a single line, simply separate each command with an ampersand (&). For example:
    mkdir c:\abc & cd abc & dir*
    Regarding your concerns about performance, well that would depend on exactly what you mean. Using CLIENT_HOST (or HOST on the server) simply opens a shell (DOS in this case) then passes your command to it. The performance of performing this action really isn't measurable. Basically you are just pressing a button and you should get a near immediate action. As for the performance of executing each command, that has nothing to do with Forms. Once the command is passed to the shell, the rest is a function of the shell and whatever command you passed.
    Having said that, if you were to write something sloppy like a loop (in pl/sql) which called CLIENT_HOST lots of times repeatedly, then yes there would be a performance problem because the pushing of the button will cause an exchange to and from the server and each cycle in the loop will do the same.
    So the answer to how performance is impacted will depend on what exactly you need to accomplish. If it is a single call to CLIENT_HOST, this should be fine.

  • How to Run Operating System Command Before/After Message Processing SAP PI

    Hi,
    We are trying to execute multiple commands via "Operating System Command Before/After Message Processing".
    When we use single command say for example cp or mv (copy or move) the commands get executed fine.
    eg: cp %F /var/opt/data/outbound/Test/Dummy.txt 
    /this works fine/
    when we club commands together or try to redirect the outputs of commands, none of the commands get executed.
    eg:
    cp %F /var/opt/data/outbound/Test/Dummy.txt ; rm %F
    or
    wc -l %F > /var/opt/data/outbound/Test/Dummy.txt
    Is it possible to execute multiple commands or redirect the output  of commands without using a shell script? The PI server we are working on iis hosted on UNIX environment.

    Hi Harleen,
    try like this
    cp %F /var/opt/data/outbound/Test/Dummy.txt ; rm %F
    instead of semicolon try this
    (1) &
    command1 & command2
    Execute Command1 and then execute Command2
    (2) &&
    command1 && command2
    Runs the command2 only when command1 doesn't Complete successfully
    (3) ||
    command1 || command2
    Runs the second command if the first command had an error
    (4) ()
    (command1 || command2) || (command3 & command4)
    Defines the order in which commands are to be executed
    Regards
    Suraj

  • How do I run a unix command to quit ARD if it is running on a remote server I am trying to access?

    how do I run a unix command to quit ARD if it is running on a remote server I am trying to access?

    killall "Remote Desktop"
    Regards.

  • Issue with running scenario from command line-RESOLVED

    I have made appropriate changes in the odiparams.bat file and am trying to run the startscen command from the bin directory of the ODI installation on windows XP Pro SP2
    startscen DPRI_SEC_PKG_POP_PRI_SEC_TBLS 001 GLOBAL "-v=2"
    set ODI_SECU_DRIVER=oracle.jdbc.driver.OracleDriver
    set ODI_SECU_URL=jdbc:oracle:thin:@pridb-test-1:1521:PRISBOX
    set ODI_SECU_USER=PRI_MST_TST
    set ODI_SECU_ENCODED_PASS=b1ya.1dDo.cclkh.IVhi5Ovp
    set ODI_SECU_WORK_REP=PRI_WRK_TST
    set ODI_USER=SUPERVISOR
    set ODI_ENCODED_PASS=a7yXIxOwQ4avmSJZia4,79QAp
    Below is the error I get:
    OracleDI: Starting scenario DPRI_SEC_PKG_POP_PRI_SEC_TBLS 001 in context GLOBAL
    com.sunopsis.sql.c: oracle.jdbc.driver.OracleDriver
    at com.sunopsis.sql.SnpsConnection.a(SnpsConnection.java)
    at com.sunopsis.sql.SnpsConnection.connect(SnpsConnection.java)
    at com.sunopsis.dwg.cmd.e.h(e.java)
    at com.sunopsis.dwg.cmd.e.g(e.java)
    at com.sunopsis.dwg.cmd.e.y(e.java)
    at com.sunopsis.dwg.DwgJv.treatCmd(DwgJv.java)
    at com.sunopsis.dwg.DwgJv.main(DwgJv.java)
    at oracle.odi.Agent.main(Agent.java)
    DwgJv.main: Exit. Return code:-1
    Please suggest where I might be going wrong? I've made sure that the repository connections as correct. It is not really telling what is wrong or maybe I don't understand the error message.
    Edited by: user10184763 on Sep 26, 2008 10:50 AM
    ALRIGHT....I picked up the original backed up odiparams.bat file and entered all the information one more time and then it worked...I dont know waht happened..but it worked!! Thanks people!
    Edited by: zebango on Oct 14, 2008 10:39 AM

    Still getting the same error. Work repository name is correct. Passwords freshly encoded. The thing is everytime I run the command agent encode &lt;password&gt; it gives me a new encoded password. Is tht expected behavior??
    bq. C:\Program Files\Oracle\oracledi\oracledi\bin&gt;startscen DPRI_SEC_PKG_POP_PRI_SEC \\ TBLS 001 GLOBAL "-v=2" \\ OracleDI: Starting scenario DPRISEC_PKG_POP_PRI_SEC_TBLS 001 in context GLOBAL \\ ... \\ com.sunopsis.sql.c: sun.jdbc.odbc.JdbcOdbcDriver \\ at com.sunopsis.sql.SnpsConnection.a(SnpsConnection.java) \\ at com.sunopsis.sql.SnpsConnection.connect(SnpsConnection.java) \\ at com.sunopsis.dwg.cmd.e.h(e.java) \\ at com.sunopsis.dwg.cmd.e.g(e.java) \\ at com.sunopsis.dwg.cmd.e.y(e.java) \\ at com.sunopsis.dwg.DwgJv.treatCmd(DwgJv.java) \\ at com.sunopsis.dwg.DwgJv.main(DwgJv.java) \\ at oracle.odi.Agent.main(Agent.java) \\ DwgJv.main: Exit. Return code:-1
    My ODI params.bat for reference. again this Windows XP Prof2
    bq. set ODI_SECU_DRIVER=sun.jdbc.odbc.JdbcOdbcDriver \\ set ODI_SECU_URL=jdbc:oracle:thin:@pridb-test-1:1521:PRISBOX \\ set ODI_SECU_USER=PRI_MST_TST \\ set ODI_SECU_ENCODED_PASS=b1yaZszHYl5dvTmffPVqRhkp \\ set ODI_SECU_WORK_REP=PRI_WRK_TST \\ set ODI_USER=SUPERVISOR \\ set ODI_ENCODED_PASS=a7yXTDTi0KW4pefy2MPpHSuDy
    Any suggestions?

  • File Receiver Adapter:Run Operating System COmmand after message Processig:

    Dear All,
    I have gone through this link
    [http://help.sap.com/saphelp_nw2004s/helpdata/EN/e3/94007075cae04f930cc4c034e411e1/content.htm]
    But i have a problem.
    In the scenario which we have, File name is DYNAMICALLY GENERATED by a UDF
    I want to call the file at run time after message processing via Command Line and execute some os commands.
    But since the file name is Dynamic....How will i call the file at run time in Command Line:
    SYNTAX: %f(FileName)
    How will i specify the file name in the above syntax as the file name is Dynamic and not constatnt.
    Please Advice.
    Senthilprakash.

    Dear All,
    Yes just now i got the answer from this thread[OS command line script - Need help;
    Actually i have another doubt now
    In REVEIVER FILE ADAPTER:
    when we give Run Operating system Command After Message processing
    does the OS command get executed after the output file is placed in the Receiver folder/server or before its placed in the receiver folder?
    Regards,
    Senthilprakash.

  • Run operating system command for sender File adpter (NFS)

    Hi All,
    iam doing a file to RFC scenario, using 'Run operating system command' in sender file adapter to change the file name while archiving (after processing completed).
    I mention OS command like this:
    sample_server\scripts\Test\Rename.bat"
    Rename.bat file calls a 'perl script' code.
    when i run interface, could see below statement in adapter log ->
    "Execute OS command "
    sample_server\scripts\Test\Rename.bat"
    but the script was not run and file name was not changed.
    Please advice what could be the problem?
    Does this mean script executed successfully?
    Do i need install perl software on XI server, even perl script (.bat file) is executing on sample_server?
    Thanks in advance..
    Regards,
    Rajesh

    Hi,
    Just check the following URL and give it a try again :-
    Executing Unix shell script using Operating System Command in XI
    Hope this info Helps..
    Regards,
    Aditya

  • RUN OPERATING SYSTEM COMMAND BEFORE MESSAGE PROCESSING

    hi.
    just i want to know what is the purpose of run operating system command before message processing,after message processing under file sender adapter.
    waiting for your great answer.
    bye.
    regards.
    seeta ram.

    Hello Seeta,
    let me see if I give it using a simple scenario that I implamented : i nedd to transfer a very large file from one server to the other by XI.
    to save space and network traffic I use an OS command before picking up the file to run a zip command to zip the file.
    after I transfer the file to the target server I run another OS command after the transfer to unzip the file.
    now to your second question:
    the before Os command on the target server is used mostly for checks (make sure there isn't a file by that name or backing up existing data)
    and the after sender OS command is usualy for backing up or erasing existing files (cause it is done only after the first part was finished succesfully).
    Uri Lifshitz.
    p.s.
    there was a blog obout this titled "XI as a huge file mover"
    and you can see a description and my scripts at https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/05/03/additionaltipsforusingXIasahugefiletransfer%28withbatchscripts%29&

  • How can I run Runtime.exec command in Java To invoke several other javas?

    Dear Friends:
    I met a problem when I want to use a Java program to run other java processes by Runtime.exec command,
    How can I run Runtime.exec command in Java To invoke several other java processes??
    see code below,
    I want to use HelloHappyCall to call both HappyHoliday.java and HellowWorld.java,
    [1]. main program,
    package abc;
    import java.util.*;
    import java.io.*;
    class HelloHappyCall
         public static void main(String[] args){
              try
                   Runtime.getRuntime().exec("java  -version");
                   Runtime.getRuntime().exec("cmd /c java  HelloWorld "); // here start will create a new process..
                   System.out.println("Never mind abt the bach file execution...");
              catch(Exception ex)
                   System.out.println("Exception occured: " + ex);
    } [2]. sub 1 program
    package abc;
    import java.util.*;
    import java.io.*;
    class HelloWorld
         public static void main(String[] args){
         System.out.println("Hellow World");
    } [3]. Sub 2 program:
    package abc;
    import java.util.*;
    import java.io.*;
    class HappyHoliday
         public static void main(String[] args){
         System.out.println("Happy Holiday!!");
    } When I run, I got following:
    Never mind abt the bach file execution...
    I cannot see both Java version and Hellow World print, what is wrong??
    I use eclipse3.2
    Thanks a lot..

    sunnymanman wrote:
    Thanks,
    But How can I see both programs printout
    "Happy Holiday"
    and
    "Hello World"
    ??First of all, you're not even calling the Happy Holiday one. If you want it to do something, you have to invoke it.
    And by the way, in your comments, you mention that in one case, a new process is created. Actually, new processes are created each time you call Runtime.exec.
    Anyway, if you want the output from the processes, you read it using getInputStream from the Process class. In fact, you really should read that stream anyway (read that URL I sent you to find out why).
    If you want to print that output to the screen, then do so as you'd print anything to the screen.
    in notepad HelloWorld.java, I can see it is opened,
    but in Java, not.I have no idea what you're saying here. It's not relevant whether a source code file is opened in Notepad, when running a program.

  • How to run a unix command in java

    Hi all,
    I need to run a unix command in my standalone java application.my java program is in windows.Is it possible to run unix command on windows system.help me out.
    I tried this
    Process p = Runtime.getRuntime().exec("ps -ef");
                BufferedReader stdInput = new BufferedReader(new
                     InputStreamReader(p.getInputStream()));
                BufferedReader stdError = new BufferedReader(new
                     InputStreamReader(p.getErrorStream()));i get IO Exception -Create Process ps-ef error=2

    If you want to run a command from java for a windows platform, you should check windows knows the command.
    So, load up a DOS prompt and type ps -ef and see what happens.

  • Run Operating Systems command.

    Hi Experts,
    Please provide information on Run Operating Systems commands for File adapter.
    I have gone through t he below mentioned link already:
    [http://help.sap.com/saphelp_nw04s/helpdata/en/e3/94007075cae04f930cc4c034e411e1/frameset.htm]
    Also , please provide links for OS commands whch can be used for windows OS.
    thanks,
    Neha

    Hi Neha,
    pls do chk this linkfor windows OS commands
    http://webtools.live2support.com/windows/
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/sapXIFileAdapterOSCommandLine+Feature
    An interesting usage of Variable Substitution in XI
    Solution to the problem encountered using Variable Substitution with XI-SP12
    Copy a file with same filename using XI
    thanx
    Sampath
    Edited by: venkata sampath on Jul 8, 2008 7:20 AM

  • Run Operating System Commands

    Hi,
    There is an urgent requirement, i want to know about Run Operating System Commands in file adapter. What are all possible commands for windows operating system? and how it works? Kindly send me your suggestions and links at the earliest.
    Your help will be appreciated.
    Thanks,
    Sadhna.

    Hi,
    Run Operating System Command Before/After Message Processing
    &#9679;      Command Line
    An operating system command specified here is executed before or after the message processing of a file that was found in a run. The default value is an empty character string (no command).
    When the operating system command is called, the file name currently being processed can be specified with the following placeholders:
    &#9679;        %f (file name)
    &#9679;        %F(absolute file name including path)
    &#9679;      Timeout (secs)
    This specifies the maximum runtime of the executing program in seconds. When this time interval is exceeded, the adapter continues processing. The executing program continues to run in the background.
    &#9679;      Terminate Program After Timeout
    Set this indicator if the adapter is to terminate the executing program when the timeout is exceeded.
    The adapter writes the output (STDOUT and STDERR) for the operating system command in the system trace.
    Regards,
    Phani

  • How to run several OS commands in file adapter ?

    I can run one UNIX commands in a file receiver adapter. But could I run more than one command ? I tried to use a semicolon, but it doesn't work. Only 1st command is executed. (in UNIX, we can use semocolon to run several command in one command)

    Hi
    Create a batch file  and in that put  all the commands to be executed.
    Mention this file in file adapter configuration ( CC ).
    thanks
    Prasad

  • Getting SimpleChat.mxml example running in the command-line

    Hi,
    I am working on getting a connection to cocomo working. Unfortunately, the documentation is highly unclear about how to get this running from the command-line(not to mention the example file in flash builder 4 crashes when run...).
    Directly run, this is the error I'm getting:
    $ /Developer/flex_sdk_4/bin/mxmlc cocomo_load.mxml
    Loading configuration file /Developer/flex_sdk_4/frameworks/flex-config.xml
    /Users/vlion/Documents/work/flixn/repos/vss/sandbox/cocomo_load.mxml(72): Error: Could not resolve  to a component implementation.
    /Users/vlion/Documents/work/flixn/repos/vss/sandbox/cocomo_load.mxml(84): Error: Could not resolve  to a component implementation.
    When adding --show-actionscript-warnings=true --strict=true, I get the same warning.
    I have afcs.swc in the directory I'm running this from.
    However, when run with --library-path=., I receive a slew of "could not find resource bundle for local en_US" warnings. Setting the local to en_US doesn't help the matter.
    Reviewing the discussions I found online, this appears to be related to namespace issues. However, it is unclear what the namespace issue is.
    What, exactly, is the problem, and what needs to be set to resolve it?
    Message was edited by: pnathan_: added filename and some readability formatting.

    Hi,
    Thanks for bringing this in notice to us. Since we were not building the examples in command-line with flex 4,  we didn’t see this problem earlier.
    The problem happened because our LCCS components were built with halo component and namespace in flex 3. So, when you are using the spark framework and flex 4, if you do not mention that you also need the halo theme , our components won't work. Flex Builder takes care for it but while doing command-line compiling you need to mention the theme specifically. If you run your current script with Flex 3 sdks, it would have built fine. This has nothing to do with our namespaces or using locale.
    I am attaching a quick ant build script which I used to build our DefaultPods example with Flex 4 sdks( this script file is in same folder as DefaultPods.mxml).
    You can see the build  script and make any changes ( since I used for windows) and let us know if everything works fine for you.
    Thanks again for bringing it to our notice. We will make sure that this gets added to the docs in next-release.
    Thanks
    Regards
    Hironmay Basu
    Here is the Ant Script
        <property name="cocomoSDK.dir" value="$/../../../cocomo" />
        <property name="FlexSDK.dir" location="C:\Program Files\Adobe\Adobe Flash Builder 4\sdks\4.0.0" />
        <property name="mxmlc.jar" location="${FlexSDK.dir}/lib/mxmlc.jar" />
        <property name="cocomo.lib.dir" location="$/../../../cocomo/lib/" />
                    <!launcher>
                            <arg value="-output=$/DefaultPods.swf" />
                            <arg value="-file-specs=$/DefaultPods.mxml" />
                        </java>
            </target>
    </project

  • Having trouble in running a unix command and getting the output

    Hi,
    I am trying to run a unix command from within the java code. I am not able to make it work. I am enclosing the code and the error message that I am getting. Any help is highly appreciated.
    import java.io.*;
    public class RunCommand {
        public static void main(String args[]) {
            String s = null;
            try {
                Process p = Runtime.getRuntime().exec("cat UNIX_ASCII_TEXT_FILE | A_UNIX_PROGRAM -d");
                BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
                BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));
                // read the output from the command
                System.out.println("Here is the standard output of the command:\n");
                while ((s = stdInput.readLine()) != null) {
                    System.out.println(s);
                // read any errors from the attempted command
                System.out.println("Here is the standard error of the command (if any):\n");
                while ((s = stdError.readLine()) != null) {
                    System.out.println(s);
                System.exit(0);
            catch (IOException e) {
                System.out.println("exception happened - here's what I know: ");
                e.printStackTrace();
                System.exit(-1);
    }The error message that I am getting is
    Here is the standard output of the command:
    SLu|%%$$=
    Here is the standard error of the command (if any):
    cat: cannot open |
    cat: cannot open A_UNIX_PROGRAM
    cat: cannot open -dLooks like the cat command is working and not the pipe command and the command after the pipe. But when I run the UNIX command from the command prompt I get the expected result.

    You might read this article and see if its approach works.
    http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html

  • Running Jar vs. command line with libraries

    Hi everybody,
    I have an application that works well from the command line, which relies on 3 libraries, all of which are in the same directory. My current directory structure is like this:
    Main Folder
    -> Library 1
    -> Library 2
    -> Library 3
    -> Run script
    -> Source Folder ("source")
    ->-> Code and main class
    Library 1 depends on both Library 2 and Library 3. When I run from the command line, from the main folder, using this command:
    java -Djava.library.path=. source/MainClass
    My program runs fine.
    The problem comes when I try to package it into a Jar and replicate the directory structure.
    My manifest is:
    Manifest-Version: 1.0
    Main-Class: source.MainClass
    <newline>
    and my jar command is:
    jar cvmf Manifest.txt test.jar source/*.class
    When I try to run my jar, I get this error:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/MainDirectory/Library1.so: Library2.so: cannot open shared object file: No such file or directory
    I know what this means-- for some reason it doesn't know where Library2 is-- but I'm mystified as to why this works fine from the command line and not from a jar. Can anyone help me figure this out, please?
    Thanks,
    Jezzica85

    warnerja wrote:
    Wrong question. You still want to run it via java -jar, but...
    Your jar needs a MANIFEST.MF (if I recall correctly, that is the right file name) in its META-INF folder (again, if I recall correctly) which needs to set up the classpath via a Class-Path=... line in the file.
    Actually you probably already do have such a file (you need it anyway for the jar to figure out what the main class is to execute), but it probably doesn't contain a Class-Path entry or is incorrect.
    Google for jar manifestI've had less than stellar success on correcting the big boys lately, but why should I let that stop me...
    As far as I can tell, the OP seems to be having problems with native link libraries. Some java class loads Library1 then (it appears) Library1 attempts to load Library2.
    Would fixing a CLASSPATH help that?
    I would expect it to be a problem with LD_LIBRARY_PATH (ala Sabre's earlier reply).

Maybe you are looking for