Unix command execution

Hi All,
How to execute an UNIX command in SAP. I want to execute ls command from  sap. How to do that.
Thanks.
Moorthy.

Hi,
Refer to the SAmple program on the link.
http://saplab.blogspot.com/2007/10/sample-abap-program-to-execute-unix.html
Regards
Sumit Agarwal

Similar Messages

  • Unix command execution with parameters

    Hi Friends!
       Can I execute a unix command with file ?
                Like I want to create an account in Unix. for that I have to pass some parameters like account name. account id, directory, shell,  what I am doing  I am passing all this information to ABAP Proxy and it goes to file adapter and then it goes to unix server directory and then I trigger the command to create an account . We are happy with this.. but client is not happy with this file scenario... will it be possible for me use just abap proxy and at received determination i pass all the parameters with command and exevute it without using File. ?
    if yes then How we can send parametes to unix and trigger a command.
    Please reply me. your any help will be appreciated alot.
    Regards
    Naeem

    You can call a shell script from Abap Side, and pass all parameters in calling phase.
    Take a look:
    http://searchsap.techtarget.com/tip/Calling-Unix-Shell-Scripts-From-ABAP
    Otherwise, you can call a shell script in sender or receiver comunication channel in Xi/Pi, and pass parameters when you call the shell script.

  • "at" UNIX Command in Java Program

    Friends,
    1. "at" command in UNIX execute Unix command at a scheduled time. 2. For each user there will be a table maintained internally which can be accessed by "at" with "-l" argument.
    3. A mail will be sent to the owner with the output of the commands as a message.
    I tried to run the "at" command of Unix in JSP, which gets succesfully executed in Oracle 10g App Server container (Installed in Solaris machine). I have tested the successful execution of command with the log file. But I haven't got any mail for the output. If anyone had any idea, please help me.
    The code I have wtitten is
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec(new String[] {"sh","-c","at 2115 Dec 7 < /export/home/usr1/abc.sh"});
    InputStream stderr = proc.getErrorStream();
    InputStreamReader isr = new InputStreamReader(stderr);
    BufferedReader br = new BufferedReader(isr);
    String line = null;
    logger.info("<ERROR>");
    while ( (line = br.readLine()) != null)
    logger.info(line);
    logger.info("</ERROR>");
    int exitVal = proc.waitFor();
    logger.info("Process exitValue: " + exitVal);
    My doubts are:
    1. Who is the owner of the output of "at"command, which gets executed under Oracle 10g App Server container?
    2. If no one is the owner, then where will the output of "at" command will go?
    3. Is there any other way to execute "at" command of UNIX in java program? If so, then please help me.
    Thanks in advance.
    regards
    Nandha Kumar.M

    filestream I have to ask - what's a chav ?
    I have doubts abut what it is :-)
    Seriously though, what is that an abbreviation for?
    That's a new one to me.
    http://www.chavscum.co.uk
    chavs are roughly analogous to rednecksI wouldn't use that analogy. While both may lack certain social graces, rednecks typically don't receive ASBOs.
    Chavs favor small cars with lots of bling whereas rednecks are likely to drive a pickup or a large sedan.
    Chavs have pitbulls in their yards (gardens), rednecks an '84 Mustang LX on cinder blocks.
    etc, etc.
    Message was edited by:
    filestream
    Message was edited by:
    filestream

  • Problem With UNIX command in ODI Environment.

    A procedure is used in our package which involves moving a file from a folder to another in a UNIX server.
    The procedure uses an OS command - 'os.system' to execute unix command.
    The unix command is a grep command which seems to work fine when executed alone.
    But when this procedure is executed ,it fails.
    The following code raises an error and the procedure fails.:
    if os.system(cmd) <> 0:
    raise "command fails","see agent output for details";
    Whenever we are trying to reverse,we get "file not Found " error.
    We tried to execute the jython code by placing the files in local directories. The same error appears both when the file is in local and when it is in a remote directory.
    This is the error we get:
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (innermost last):
    File "<string>", line 20, in ?
    HeaderCmd failed:: See agent output for details      at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
         at com.sunopsis.dwg.codeinterpretor.k.a(k.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java)      at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execSrcScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlS.treatTaskTrt(SnpSessTaskSqlS.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)      at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.g.y(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)

    Hi,
    The unix command is a grep command which seems to work fine when executed alone. :-
    I guess you executed this from your Unix server , so it work fines.
    And when you are trying to execute outside from this (using ODI) , its failing , right ?
    Can you please check the permission settings for that script file (sh).
    Please try by giveing the full permission (specifically execution permission) for all users connecting from other machines.
    This can be one of the reason for the failure .
    please let me know if this is not working
    Regards,
    Rathish

  • Unix Command doesn't work in Tiger

    Hi,
    I've got labs of eMacs that I'm finally upgrading to Tiger. My image seems to work fine, but I'm running into a weird quirk with my "Send Unix" commands via ARD. We're doing NWEA testing and LOVE the unix commands because we can login to machines, turn on TestTaker, login to TestTaker, and select the correct test (math or reading) and the right version of the test.
    The script below works fine on a panther eMac.
    osascript
    tell application "System Events"
    keystroke "1" using command down
    delay 3.0
    keystroke ASCII character 31
    delay 2.0
    keystroke return
    keystroke "n" using command down
    end tell
    On my Tiger machines, the command stops on the:
    "Keystroke ASCII character 31" line (this should arrow down to next test version).
    A report window comes up in ARD with this error message:
    86:104: execution error: System Events got an error: 31 doesn't understand the ASCII character message. (-1708)
    This used to work perfectly, but now I can't get ASCII 31 (or arrow down to work). The real killer is that other techs in my school district have eMacs running tiger with same commands that work (some have to arrow down 16 times to get to correct test version). The other commands (like command 1 and returns, command n) all work fine! Hate to have to touch 80 machines each day to select proper test version when we log in.
    Any Suggestions????

    Try this form of the line:
    keystroke (ASCII character of 31)
    That's worked for some people. Hope it works for you. If it doesn't work as given, try without the parentheses.
    Regards.

  • Unix command from pl/sql

    How can I call a unix command or run a c program
    from a stored procedure in oracle 9i.

    Or if you want to do a host call then implement the following class as a Java stored procedure.
    import oracle.jdbc.*;
    public class util
    // Executes an operating system command. The command shall be fully qualified.
    // The Java connects with silent login. No environment set-up files are run
    // and no path is set. The mode can be "sync" or "async" for respectively
    // synchronous and asynchronous execution
    static public int OSCmd(String cmd, String mode, String[] output)
    throws IOException, InterruptedException
    System.out.println("OSCmd "+cmd+" ("+mode+")");
    output[0]="";
    // start command
    Process proc = Runtime.getRuntime().exec(cmd);
    if (mode.equals("sync"))
    // get command's stdout and stderr
    InputStream stdout = proc.getInputStream();
    InputStream stderr = proc.getErrorStream();
    String str;
    // Stdout
    BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
    while ((str = br.readLine()) != null)
    output[0]+=str+"\n";
    br.close();
    // Stderr
    br = new BufferedReader(new InputStreamReader(stderr));
    while ((str = br.readLine()) != null)
    output[0]+=str+Long postings are being truncated to ~1 kB at this time.

  • Send Unix command won't work under 10.2.8

    So I am running this command in a lab of 10.2.8 machines. I go to send Unix Command then I put this in:
    Send Unix Command
    user: root
    osascript -e 'tell application "System Events" to keystroke "map"'; \
    osascript -e 'tell application "System Events" to keystroke tab'; \
    osascript -e 'tell application "System Events" to delay 0.5'; \
    osascript -e 'tell application "System Events" to keystroke "map"'; \
    osascript -e 'tell application "System Events" to delay 0.5'; \
    osascript -e 'tell application "System Events" to keystroke return'
    Then I check Display all output.
    Then I check Run command as User: Root
    Then I send it.
    After that in the Display all output shows me this.
    cms132-30 (64.8.180.103)
    /bin/bash: Send: command not found
    /bin/bash: user:: command not found
    execution error: System Events got an error: NSCannotCreateScriptCommandError (10)
    execution error: System Events got an error: NSCannotCreateScriptCommandError (10)
    execution error: System Events got an error: NSCannotCreateScriptCommandError (10)
    execution error: System Events got an error: NSCannotCreateScriptCommandError (10)
    So I close that window and see an error message by that machine that says:
    Error: 1 "execution error: system events got an error: NSCannotCreateScriptCommandError (10)"
    So what is wrong with this? It works fine with 10.3.9 but not with 10.2.8
    Imac   Mac OS X (10.2.x)  

    It doesn't appear that the System Events under 10.2.x responds to the keystroke command (it doesn't appear in the AppleScript Dictionary.)

  • Unix command from Plsql block

    Hi all ,
    I have tried unix command from PLSQL Block,
    Please see the code.
    DECLARE
    stat INTEGER;
    host_command varchar2(100);
    errormsg VARCHAR2(80);
    command varchar2(2000);
    BEGIN
    command:='touch /home/oracle/testting.txt';
    dbms_pipe.reset_buffer;
    host_command:= dbms_pipe.unique_session_name;
    dbms_output.put_line('host_command:'||host_command);
    dbms_pipe.pack_message(command);
    dbms_output.put_line('pack message:'||command);
    stat := dbms_pipe.send_message(host_command);
    dbms_output.put_line('stat:'||stat);
    IF stat <> 0 THEN
    raise_application_error(-20000, 'Error:'||TO_CHAR(stat)||' sending on pipe');
    END IF;
    stat := dbms_pipe.receive_message(host_command);
    dbms_output.put_line('stat2:'||stat);
    IF stat <> 0 THEN
    raise_application_error(-20000, 'Error:'||TO_CHAR(stat)||' receiving on pipe');
    END IF;
    dbms_pipe.unpack_message(errormsg);
    dbms_output.put_line('errormsg:'||errormsg);
    IF errormsg <> 'SUCCESS' THEN
    raise_application_error(-20000, 'Execution error: '||errormsg);
    END IF;
    END;
    Nothing happend from this code just getting only following result with error.
    -----------------result-----------------------------
    host_command:ORA$PIPE$002D19820001
    pack message:touch /home/oracle/testting.txt
    stat:0
    stat2:0
    errormsg:touch /home/oracle/testting.txt
    DECLARE
    ERROR at line 1:
    ORA-20000: Execution error: touch /home/oracle/testting.txt
    ORA-06512: at line 33
    Can any one tell me what i doing wrong in this code.
    I m working on Oracle 11g and AIX unix server.

    This is the forum for the SQL Developer product, not for general PL/SQL questions. There is a link to the SQL and PL/SQL forum in the announcement at the top of this forum.

  • ARD 3.6.1 remote log in Unix command failure

    Hello, I am using 10.7.5 and ARD 3.6.1 and cannot figure out how to remotely log in to another computer
    I wish to remotely log in using ARD to multiple computers in my network, up to 30 at a time for elementary students.  I can observe, control and send Unix commands to the machines when they are at startup log in screen or in use. This is the Unix command I am trying to use to log into the comptuer using ARD and Unix command function.
    osascript -e 'tell application "System Events" to keystroke "login"'; \
    osascript -e 'tell application "System Events" to keystroke tab'; \
    osascript -e 'tell application "System Events" to delay 0.5'; \
    osascript -e 'tell application "System Events" to keystroke "password"'; \
    osascript -e 'tell application "System Events" to delay 0.5'; \
    osascript -e 'tell application "System Events" to keystroke return'
    **and yes I am changing the login and password keystroke**
    I have tried the above Unix command and several others but I get a message saying "A console user is not logged in on “studnetmacbook""  so I click the button to run command as user admin but then get the message below. 
    36:50: execution error: An error of type -10810 has occurred. (-10810)
    36:49: execution error: An error of type -10810 has occurred. (-10810)
    36:54: execution error: An error of type -10810 has occurred. (-10810)
    36:52: execution error: An error of type -10810 has occurred. (-10810)
    36:52: execution error: An error of type -10810 has occurred. (-10810)
    Could someone explain these errors.  Is ARD not compatible with remote log in with the versions I have?  I have seen on sites this is posted and other sites that this needs to be run as the root user...Should I know how to run this as a root user and if so could someone help me with how to do this? 
    Or if anyone else has a working command could you share it with me for remotely logging in using ARD.
    Thanks!

    Hi
    Don't quite recognise what it is you're using. Maybe try:
    osascript <<EOF
    tell application "System Events"
    keystroke "whateverusernameyou'reusing"
    keystroke tab
    delay 0.5
    keystroke "whateverthepasswordis"
    delay 0.5
    keystroke return
    end tell
    EOF
    Instead. Works every time for me.
    The above are all on separate lines.
    HTH?
    Tony

  • Problem while executing unix command having \&\& symbol

    Hi All,
    Please check the below program while is not executing, when the unix command's having \&\& is used.
    The following command copies the src folder to dest folder with out data loss ...
    import java.io.*;
    import java.util.*;
    public class Sample
      public static void main(String[] args)
         try {
              String ExCmd     =     "ssh [email protected] cd /u01/11510/devdb/9.2.0/slax \\&\\& /bin/tar cf - . | ssh [email protected] cd /d01/AppsTest/testappl2 \\&\\& /bin/tar -xf - > test.log";
              System.out.println("Command to execute : "+ExCmd);
              Process SshProc = (Runtime.getRuntime()).exec(ExCmd);
            // any error message?
              StreamReader errorStream = new StreamReader(SshProc.getErrorStream(), "DEBUG");           
            // any output?
              StreamReader outputStream = new StreamReader(SshProc.getInputStream(), "OUTPUT");
            // kick them off
              errorStream.start();
              outputStream.start();
              int pp =SshProc.waitFor();
              System.out.println("command execution value: "+pp);
         }catch(Exception e) {
              e.printStackTrace();
    class StreamReader extends Thread
        InputStream is;
        String type;
        StreamReader(InputStream is, String type)
            this.is = is;
            this.type = type;
        public void run()
            try
                InputStreamReader isr = new InputStreamReader(is);
                BufferedReader br = new BufferedReader(isr);
                String line=null;
                while ( (line = br.readLine()) != null) {
                    System.out.println(type + ">" + line);   
            } catch (IOException ioe)
                ioe.printStackTrace(); 
    }When this is executed iam getting process value as "0".
    But nothing is copying to target ..
    So to resolve this i have created a script .. and passed arguments to that script and chaged command as follows :
    String ExCmd = "sh /home/juser/movedir.sh [email protected] /u01/11510/devdb/9.2.0/slax /bin/tar [email protected] /d01/AppsTest/testappl2 /bin/tar /home/juser/test";
    Then it is executing fine. But in my scenario iam restricted to use scripts.
    So plz can any body have a solution for this.
    Thanks, SN

    Iam unable to execute command with &&, it's executing fine only from \&\& ... Can any body tell me how can we make below code as generic, depending on UNIX Shell environment?
    String[] ExCmd     = {"sh", "-c", "ssh [email protected] cd /u01/11510/devdb/9.2.0/slax \\&\\& /bin/tar cf - . | ssh [email protected] cd /d01/AppsTest/testappl2 \\&\\& /bin/tar -xf - > test.log"};
    Process SshProc = Runtime.getRuntime().exec(ExCmd);"sh" should be changed here depending on UNIX Environment, because previously i found that in some unix environment's "sh" is not working ..
    So can any one help...
    Thank in advance.

  • I want to execute UNIX COMMAND in ABAP

    Hi All,
    I want to execute a UNIX XOMMAND sh <scriptname> <filename> to replace divsion codes.in ABAP.
    But, I came to know that we can't (2) or try the following program but unfortunately the command CALL SYSTEM is not supported by SAP. If you are on R/3 2.1 - 2.2x you can get some idea's from the program SAPMSOS0.
    REPORT ZUNIXCOM .
    DATA: U_COMMAND(200).
    Table for system messages
    DATA: BEGIN OF RT OCCURS 100 ,
    LINE(100) ,
    END OF RT .
    START-OF-SELECTION .
    MOVE 'unix command' to U_COMMAND .
    REFRESH RT.
    CALL 'SYSTEM' ID 'COMMAND' FIELD U_COMMAND
    ID 'TAB' FIELD RT-SYS .
    LOOP AT RT.
    WRITE : / RT-LINE .
    ENDLOOP. 
    So please can u help me how to call a unix command from ABAP. it is very urgent. I want complete details and all possible solutions
    <removed_by_moderator>
    Thanks,
    gyanaraj
    Edited by: Julius Bussche on Aug 26, 2008 11:29 AM

    Selvaraj Gyanaraj wrote:>
    > So please can u help me how to call a unix command from ABAP.
    I was about to help you.
    >it is very urgent.
    I changed my mind.
    >I want complete details and all possible solutions
    I'm glad I changed my mind.
    >Points are surely rewarded.
    Too late.

  • UNIX command in ABAP code

    Hi All,
    I need to use unix command (MOVE) in ABAP code for transfering a file from one directory to another directory.
    Can any one help with how to used unix commands in ABAP?
    Thanks in advance.
    Regards,
    Hemendra

    The recommended approach always used to be to use transaction SM69 to define a "soft" command name to the operating system command so that it could be configured to work across Windows, Unix etc.  For example:
    Command name       OS         Type             OS command                                 Parameters for operating system command 
    Z_FILE_MOVE        SunOS      Customer    mv                                                 ? ?   
    You can then call function module SXPG_COMMAND_EXECUTE (quite well documented) to actually perform the command passing in the appropriate number of parameters.
    Jonathan

  • Unix commands in ABAP

    Hi,
       I need to call the following unix command in ABAP to encrypt a file on the app server .
    crypt password <org filename> new_filename
    1 But when i run it using call 'SYSTEM' .. i get message security risk , command not executed ..
    2 I also created the command in SM69 and tries to run it but same error.
    3 I also created a shell script , but i get another message when i try to run sh ...
      Please help to find out a way to make it work ..
    Kunal

    Hi kunal,
    1. probably ur basis team might be able to help u.
    2. even if we have authorisations thru sap
       to run external os command,
       the actual OS user on application server
       must have the right for it
       and access/write/read/modify
       for the files (provided thru the command)
       in question.
    3. Due to this , the systems gives the message
       of SECURITY RISK.
    regards,
    amit m.

  • 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.

  • Is there a way to change the VNC password thru unix command in ARD2?

    In a local network, I get access denied errors from macs that have the vnc password different than the Administrative login user password. I needed to change the Admistrator password which I did thru the Unix command in ARD2.
    Now.
    Is there a way to change the VNC password thru unix command in ARD2?
    Example:
    remote computer setup
    Panther 10.3.9
    vnc password - gopher
    user ID - testARD with admin rights
    user password - backdoor
    ARD2 Computer setup
    10.4.10
    login ID - testARD
    password - backdoor
    I get the blue icon but get an 'access denied' error.
    I change the password from backdoor to gopher.
    I get the red with dash icon but, can get access to the computer.
    What is going on? Is ARD2 using the VNC resource instead of ARDs resources?

    A quick search of Google finds this <http://www.macgeekery.com/tips/cli/settingremote_desktops_vnc_password_interminal>. I have not tested this myself.
    bill

Maybe you are looking for