How to execute unix command in java or jsp
have a peace day,
please send some sample code for
"execute the unix command in java or jsp"
thank you
regards
rex
i execute this coding
its compiling. while running i get the error " java.io.IOException: CreateProcess: \ls-l error=2 "
import java.io.*;
import java.util.*;
public class Test
public static void main(String[] args) throws Exception
try
String[] cmd = {"/ls-l"};
Runtime.getRuntime().exec(cmd);
catch (Exception e)
System.out.println(e);
}what can i do for that
thank u
Similar Messages
-
How to execute unix command line from cocoa?
how to execute unix command line from cocoa?
for example, if I want to call "ping" from cocoa, how should I do it? and how can I obtain the return value?
thank you.
Power G5 Quad Mac OS X (10.4.3)The following article may also help:
http://cocoadevcentral.com/articles/000025.php
Mihalis.
Dual G5 @ 2GHz Mac OS X (10.4.6) -
How to execute Linux command from Java app.
Hi all,
Could anyone show me how to execute Linux command from Java app. For example, I have the need to execute the "ls" command from my Java app (which is running on the Linux machine), how should I write the codes?
Thanks a lot,You can use "built-in" shell commands, you just need to invoke the shell and tell it to run the command. See the -c switch in the man page for your shell. But, "ls" isn't built-in anyays.
If you use exec, you will want to set the directory with the dir argument to exec, or add it to the command or cmdarray. See the API for the variants of java.lang.Runtime.exec(). (If you're invoking it repeatedly, you can most likely modify a cmdarray more efficiently than having exec() decompose your command).
You will also definitely want to save the returned Process and read the output from it (possibly stderr too and get an exit status). See API for java.lang.Process. Here's an example
java.io.BufferedReader br =
new java.io.BufferedReader(new java.io.InputStreamReader(
Runtime.getRuntime().exec ("/sbin/ifconfig ppp0").
getInputStream()));
while ((s = br.readLine()) != null) {... -
Executing UNIX command in Java
I am having problems executing a command in Java. Here's the code I have for executing:
Process p = Runtime.getRuntime().exec(cmd);
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
while((display = input.readLine()) != null)
num_1 = Double.parseDouble(display);
percent = (num_1 * 100) / (50000000);
flip = 1;
catch(IOException e)
e.printStackTrace();
System.exit(1);
Now, when I run the script, I receive the following errors:
Exception occurred during event dispatching:
java.security.AccessControlException: access denied (java.io.FilePermission /Netadmin/UCDSNMP/bin/snmpdelta execute)
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at java.lang.RuntimeException.<init>(RuntimeException.java:47)
at java.lang.SecurityException.<init>(SecurityException.java:39)
at java.security.AccessControlException.<init>(AccessControlException.java:57)
at java.security.AccessControlContext.checkPermission(Compiled Code)
at java.security.AccessController.checkPermission(Compiled Code)
at java.lang.SecurityManager.checkPermission(Compiled Code)
at java.lang.SecurityManager.checkExec(SecurityManager.java:789)
at java.lang.Runtime.exec(Compiled Code)
at java.lang.Runtime.exec(Compiled Code)
at java.lang.Runtime.exec(Runtime.java:152)
at snmp.actionPerformed(Compiled Code)
at java.awt.Button.processActionEvent(Button.java:308)
at java.awt.Button.processEvent(Button.java:281)
at java.awt.Component.dispatchEventImpl(Compiled Code)
at java.awt.Component.dispatchEvent(Compiled Code)
at java.awt.EventQueue.dispatchEvent(Compiled Code)
at java.awt.EventDispatchThread.pumpOneEvent(Compiled Code)
at java.awt.EventDispatchThread.pumpEvents(Compiled Code)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)
The user is entering the parameters for the UNIX command from a Java applet. Everything looks right, but I can't seem to run the file? Please help! All is appreciated.
Jason Banks
Northeastern UniversitySorry, this is a bug that I've reported -- see Sun's response and my original report (along with how to get around the problem) shown below:
Hi Vira Van.,
The bug you have reported is a duplicate of Bug ID: 4522533.
Thank you for providing us with additional information
that can be used in the resolution of this bug.
This bug can be monitored via the the Java Developer
Connection Bug Parade at:
http://developer.java.sun.com/developer/bugParade/index.jshtml
The Java Developer Connection is a free channel that is
maintained by staff here at Sun. Access this web page to join:
http://developer.java.sun.com/servlet/RegistrationServlet
The home page for the JDC is:
http://java.sun.com/jdc
Regards,
Girish
----------------- Original Bug Report-------------------
category : java
release : 1.4
subcategory : jar
type : bug
synopsis : signed applet: bad major version number on NN4.79 and ClassNotFound in IE5.5
description : FULL PRODUCT VERSION :
java version "1.4.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-b92)
Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode)
FULL OPERATING SYSTEM VERSION : Windows 98 [Version
4.10.2222]
ADDITIONAL OPERATING SYSTEMS :
BROWSERS: Netscape Navigator 4.79
: Internet Explorer 5.5
EXTRA RELEVANT SYSTEM CONFIGURATION :
Applet failed to start in Netscape, the following error
message appeared in the Java Console:
Netscape Communications Corporation -- Java 1.1.5
Type '?' for options.
Symantec Java! ByteCode Compiler Version 210.065
Copyright (C) 1996-97 Symantec Corporation
# Applet exception: error: java.lang.ClassFormatError: Bad
major version number
java.lang.ClassFormatError: Bad major version number
at java.lang.ClassLoader.defineClass(Compiled Code)
at netscape.applet.AppletClassLoader.findClass(Compiled
Code)
at netscape.applet.AppletClassLoader.loadClass1(Compiled
Code)
* at netscape.applet.AppletClassLoader.loadClass(Compiled
Code)
at netscape.applet.AppletClassLoader.loadClass(Compiled
Code)
at
netscape.applet.DerivedAppletFrame$LoadAppletEvent.dispatch(
Compiled Code)
at
java.awt.EventDispatchThread$EventPump.dispatchEvents(Compil
ed Code)
at java.awt.EventDispatchThread.run(Compiled Code)
at
netscape.applet.DerivedAppletFrame$AppletEventDispatchThread
.run(Compiled Code)
The same applet
A DESCRIPTION OF THE PROBLEM :
Unable to run signed applet with Netscape 4.79 and IE5.5
native JVM.
REGRESSION. Last worked in version 1.3.1
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1.compile program and copy class files to a temp directory
2.sign the applet for Netscape as follows:
signtool -k aok -d \progra~1\netscape\users\viravan -Z
FIO.jar temp
3.sign the applet for Internet Explorer as follows:
cabarc -p n FileIO.cab FileIO*.class
setreg 1 true
makecert -sk aok -n "CN=aok" aok.cer
cert2spc aok.cer aok.spc
signcode -j javasign.dll -jp LOWX -spc aok.spc -k aok
FileIO.cab
Run the applet with the following HTML file:
<html><head><Title>Self-Signed Applet</Title>
<script>
document.layers ? parm=1 : parm=0;
</script>
<body>
This file I/O applet lets you read and write to the user's
local disk.<br>
<br>
<script>
document.writeln('<APPLET CODE = "FileIO" CODEBASE = "."
ARCHIVE = "FIO.jar" WIDTH = 10 HEIGHT = 10 NAME = "JSF">');
document.writeln('<param name="Netscape"
value="'+parm+'">');
document.writeln('<param name="cabbase"
value="FileIO.cab">');
document.writeln('</APPLET>');
</script>
</body>
</html>
EXPECTED VERSUS ACTUAL BEHAVIOR :
A frame with a textarea and some buttons should popup in the
center of the screen.
ERROR MESSAGES/STACK TRACES THAT OCCUR :
Applet signed with signtool failed to start in Netscape, the following error
message appeared in the Java Console:
Netscape Communications Corporation -- Java 1.1.5
Type '?' for options.
Symantec Java! ByteCode Compiler Version 210.065
Copyright (C) 1996-97 Symantec Corporation
# Applet exception: error: java.lang.ClassFormatError: Bad major version number
java.lang.ClassFormatError: Bad major version number
at java.lang.ClassLoader.defineClass(Compiled Code)
at netscape.applet.AppletClassLoader.findClass(Compiled Code)
at netscape.applet.AppletClassLoader.loadClass1(Compiled Code)
* at netscape.applet.AppletClassLoader.loadClass(Compiled Code)
at netscape.applet.AppletClassLoader.loadClass(Compiled Code)
at netscape.applet.DerivedAppletFrame$LoadAppletEvent.dispatch(Compiled Code)
at java.awt.EventDispatchThread$EventPump.dispatchEvents(Compiled Code)
at java.awt.EventDispatchThread.run(Compiled Code)
at netscape.applet.DerivedAppletFrame$AppletEventDispatchThread.run(Compiled
Code)
The same applet signed with signcode failed to start in Internet explorer, the
error message in the Java Console is:
Error loading class: FileIO
java.lang.NoClassDefFoundError
java.lang.ClassNotFoundException: FileIO
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/applet/AppletPanel.securedClassLoad
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class FileIO extends Applet implements ActionListener {
public static void main(String[] args) {
new FileIO();
F.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
public void init() {
String tmp=getParameter("Netscape");
if (tmp!=null) {
if (tmp.equals("1")) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalFileAccess");
NS=true;
} catch (Throwable exception) {}
new FileIO();
F.setResizable(false);
public void stop() {
F.dispose();
public FileIO() {
newline=System.getProperty("line.separator");
F.setLayout(new BorderLayout(0,0));
String line,inbuf="";
String newline=System.getProperty("line.separator");
text=new TextArea(inbuf,24,80,TextArea.SCROLLBARS_BOTH);
text.setFont(new Font("Courier",Font.PLAIN,12));
text.setBackground(Color.cyan);
text.setForeground(Color.black);
F.add("Center",text);
Panel pan=new Panel();
pan.setLayout(new FlowLayout(1,0,0));
pan.setBackground(Color.yellow);
TF=new TextField(40);
TF.setFont(new Font("Courier",Font.PLAIN,12));
pan.add(TF);
OP=new Button("Open");
OP.addActionListener(this);
pan.add(OP);
FS=new Button("Save");
FS.addActionListener(this);
pan.add(FS);
SA=new Button("Save-As");
SA.addActionListener(this);
pan.add(SA);
reset=new Button("Reset");
reset.addActionListener(this);
pan.add(reset);
F.add("South",pan);
F.pack();
Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();
Dimension size=F.getSize();
int X=(screen.width-size.width)/2;
int Y=(screen.height-size.height)/2;
F.setLocation(X,Y);
F.setVisible(true);
public void actionPerformed(ActionEvent event) {
String tmp="";
String O=text.getText();
StringTokenizer tkn=new StringTokenizer(O,newline);
int ntkn=tkn.countTokens();
Object ev=event.getSource();
if (ev.equals(OP)) {
FileDialog fd=new FileDialog(F,"File to open",FileDialog.LOAD);
fd.setFile("*.java");
fd.show();
tmp=fd.getDirectory();
if (fd.getFile()==null) {text.requestFocus(); return;}
tmp+=fd.getFile();
TF.setText(tmp);
try {
if (NS)
{netscape.security.PrivilegeManager.enablePrivilege("UniversalFileRead");}
BufferedReader reader=new BufferedReader(new FileReader(tmp));
String line;
String crlf="";
tmp="";
while ((line=reader.readLine())!=null) {
tmp+=crlf+line;
crlf="\n";
reader.close();
text.setText(tmp);
} catch (Throwable e) {
e.printStackTrace();
} else if (ev.equals(FS) || ev.equals(SA)) {
try {
if (ev.equals(SA)) {
FileDialog fd=new FileDialog(F,"File to save",FileDialog.SAVE);
fd.setFile("*.java");
fd.show();
tmp=fd.getDirectory();
tmp+=fd.getFile();
} else {
tmp=TF.getText();
if (tmp.length()==0) {text.requestFocus(); return;}
if (tmp.indexOf(".java")<0) tmp+=".java";
TF.setText(tmp);
if (NS)
{netscape.security.PrivilegeManager.enablePrivilege("UniversalFileWrite");}
FileOutputStream fos=new FileOutputStream(tmp);
BufferedWriter out=new BufferedWriter(new OutputStreamWriter(new
DataOutputStream(fos)));
for (int i=0;i<ntkn;i++) out.write(tkn.nextToken()+newline);
out.flush();
out.close();
if (NS)
{netscape.security.PrivilegeManager.revertPrivilege("UniversalFileWrite");}
System.out.println(tmp+" saved");
} catch (Throwable e) {
e.printStackTrace();
} else if (ev.equals(reset)) {
text.setText("");
TF.setText("");
text.requestFocus();
private String replace(String input, String srch, String repl) {
int i=input.indexOf(srch);
while (i>=0) {
input=input.substring(0,i)+repl+input.substring(i+srch.length());
i=input.indexOf(srch);
return input;
private Button OP,FS,SA,reset,TB;
private boolean newLine,NS=false;
private TextArea text;
private TextField TF;
private final char NL='\n';
private String content,newline;
private static Frame F=new Frame("FileIO");
---------- END SOURCE ----------
CUSTOMER WORKAROUND :
build the signed applet with SDK1.3.1 or make it a signed
applet that uses Java Plugin 1.4.0 (i.e., sign it with jarsigner).
workaround :
suggested_val :
cust_name : Vira Van.
dateCreated : 2002-03-24 19:52:18.4
dateEvaluated : 2002-04-01 18:48:10.858 -
Execute unix command using java
Hello
Can we execute a unix command using java? If it is how we can execute. Is this affect the performance of the program.
ThanksI tried what you said. But its not working and returning error message,
java.io.IOException: CreateProcess: ls -a error=2
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
If i try this statement,
Runtime.getRuntime().exec("c\windows\notepad");
It is working fine.
Any idea about this.
Plz ........... -
Execute unix commands from Java
Hi,
I have a client application running on windows. This client should connect to a unix server and check for the existence of a file and display the result as "File found/File not found". In order to connect from windows to the unix server, I used the sockets and the connection is successfully established. The second part is to check for the presence of the file in unix server. I searched in google.com and the option I found to execute a unix command from java is the "Runtime.exec()". Runtime.exec is considered as the less effective (not a favorable) one.
Is there any other option available (other than the Runtime) to execute the unix command from java? Can you please let me know.
Thanks a lot
AishuSo, please let me know how I can execute the above unix commands without Runtime.exec()You have a client and a server.
You want something to run on the server, not the client.
That means that something must in fact being running on the server before the client does anything at all.
For example telnet. Or a J2EE server application.
So is something like that running?
If not then there absolutely no way to do what you want, even with Runtime.exec().
If yes then what you do depends on what is running. So Runtime.exec() would be pointless if a J2EE server was running. -
How to execute unix command through odi and store the result in table
I have to reconcile if data is loaded in table from csv file or not . I have to create a oracle data integrator package/interface/procedure to execute unix command to count number of rows in the csv files and store the count result in a table then i have to query the loaded table and count number of rows there and store in the table and have to compare is counts are same or not, Please assist me how to make package/interface/procedure to execute unix command and store result in oracle table.
Thanks in AdvanceUse ODI OS command tool in the ODI package.
create an interface in ODI using LKM File to Sql and the output file generated with the csv file's row count as a source and the db table(where the count needs to be stored) as a target -
How to execute unix command in plsql block( urgent)
Hi All,
i want rename the unix folder to New name on update non_employee table . So, please give me idea how to use unix command here.... Please suggest me ASAP ... Its urgent
CREATE or REPLACE TRIGGER NON_EMPLOYEE_AftUpd_trg
AFTER UPDATE ON NON_EMPLOYEE
FOR EACH ROW
BEGIN
IF :new.DIST_LIVELINK_PATH <> :old.DIST_LIVELINK_PATH THEN
rename unixfolder1 to :new.dist_livelink_path.
end IF;
END;The solution will depend a lot on your Oracle version, which you forgot to mention ;)
btw shouldn't that be (in pseudocode)
rename :old.dist_livelink_path to :new.dist_livelink_pathotherwise it will always fail after the first time?
In Unix that would require the mv command. -
How to execute dos command in Java program?
In Perl, it has System(command) to call dos command.
Does java have this thing?
or any other way to execute dos command in java program?
Because i must call javacto compile a file when the user inputed a java file name.Look in the Runtime class, it is implemented using the Singleton design pattern so you have to use the static method getRuntime to get its only instance, on that instance you can invoke methods like
exec(String command) that will execute that command in a dos shell.
Regards,
Gerrit. -
How do run unix command in java
hi
All unix command working fine in our java program.
but i want change user in linux by using java. it's not working.
"su root" This command onely not working.
anybody know help me
This is my ID [email protected]
This my code
<% String s = null;
try{
Process p = Runtime.getRuntime().exec("su root");
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(p.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(p.getErrorStream()));
out.println("Here is the standard output of the command:\n");
while ((s = stdInput.readLine()) != null)
out.println(s);
catch(Exception e) {}
%>I don't have further info to add to your first post, but think your guess seems quite reasonable. I thought of starting a new thread on the same topic, but think this (question) fits in here, too.
I have Java code (freeware, not opensoure), intended for Unix, which basically provides the graphical interface and relies on an I/O layer (C + shell scripts) to do most of the work. I have access to the C+shell scripts which are opensource. I ported it to Cygwin and want to use it under Windows (there is no Cygwin native Java VM).
My problem now boils down to " how to run commands under Unix and what differences are there with Windows". What are the variants?
I have to guess what the program is doing when I get an IOException at some point. E.g.: a call to shell script may be made in a different way as to a compiled exe in Unix?. I found a way to bypass path problems because forward slashes are also accepted and /cygdrive/c construct can be replace by c:/; shell scripts can be compiled into exes using shc and they work; if symbolic links are replaced by duplication of exe files, they work. What will happen in an instance whereby a process runs a shell script dynamically, through a pipe (the shell script is compiled in the Cygwin/win version and receives parameters) in a construct like:
pipefp = epopen(cmdbuf,"w"); /* (cmbuf is "makehdr par1 par2 ... ") (makehdr was a shell script and is now compiled exe for Cygwin/Windows) */?.
Thanks.
LT -
Execute Unix command from Java program running on windows
Hello,
I need to write a java program that fetches file count in a particular unix machine directory. But java program will be running on windows machine.
The program should execute unix list command and fetch the output of that command.
Can anyone help me on this?
Thanks.Hi there,
I had a similiar problem, though years ago. It was to have a java program execute any other. Lately, I've had to have a java program running on a unix machine execute a shell script. Entirely two different scenarios. I'm not sure what you will need for your app, but look into this:
Java Native Interface for executing C/C++ code.
C/C++ Code for launching the program you need to run.
java.lang.Runtime(?).exec(....)
With a combination of that stuff, you can make a launcher for any os that has Java running on it, and with Runtime, you can exec() pretty near any sort of unix shell or app command you'd like.
Good luck.
Tim -
How to execute DOS command in Java?
I want to execute a dos command in Java,such as execute test.bat command? How to realize it?
Thanks in advance!http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
I found this article really useful in solving this. Hope it helps.
Cheers,
John -
How to execute unix command from ODI Procedure
Hi,
I am trying to execute below unix command from ODI Procedure (Command on Target tab) but I am getting the error "java.io.IOException: Cannot run program "cd": error=2, No such file or directory" but when I try to execute the same command using OdiOSCommand, it is executing successfully. I don't want to use shell script to execute this command. Is there any specific syntax am I missing to execute this command from ODI procedure?
cd /project3/tmt/;ls *.dmp > dmplist.lst
Please help me on this...
Thanks
MTHi nahlikh,
Thank you for the reply.
I used below command in Procedure but still getting the same error as "java.io.IOException: Cannot run program "OdiOSCommand": error=2, No such file or directory".
OdiOSCommand "-COMMAND=cd /project3/tmt/;ls *.dmp > dmplist.lst"
as I mentioned earlier if I use the command cd /project3/tmt/;ls *.dmp > dmplist.lst in OdiOSCommand tool it is executing successfully without any issues.
any thoughts appreciated to get a solution for this issue.
Thanks
MT -
How to execute system command from java program
Hi all,
I want to change directory path and then execute bash and other unix commands from a java program. When I execute them separately, it's working. Even in different try-catch block it's working but when I try to incorporate both of them in same try-catch block, I am not able to execute the commands. The change directory command works but it won't show me the effects of the bash and other commands.
Suggestions??The code I am using is....
try
String str="cd D:\\Test";
Process p=Runtime.getRuntime().exec("cmd /c cd
"+str);your str string is already having cd in it but again you ar giving cd as part of this command also please check this,i will suggest you to remove cd from str
Process p1=Runtime.getRuntime().exec("cmd /c mkdir
"+str+"\\test_folder");you should say mkdir once you change your path,but here you are saying mkdir first and then cd D:\Test(this is because of str)..please check this
Process p2=Runtime.getRuntime().exec("cmd /c bash");
Process p3=Runtime.getRuntime().exec("cmd /c echo
himanshu>name.txt");
catch(IOException e)
System.err.println("Error on exec() method");
e.printStackTrace();
Message was edited by:
ragas -
hi friends,Iam used mysqldump command in linux platform to take backup of the database,its work properly....the command am used is
mysqldump -u root -p threadpool > sampledatabase.sql
I need to execute the same command in java....?Anyone here to know how to do that....?Thanks in advance........Crosspost:
http://forum.java.sun.com/thread.jspa?threadID=5185230&messageID=9721722#9721722
http://forum.java.sun.com/thread.jspa?threadID=5185199&messageID=9721587#9721587
Do not mess the forum.
Maybe you are looking for
-
Restriction on sending planned orders to SAP R/3
Dear all, can anybody explain me the details as how can i control the transfer of transcation data to SAP R/3 either by timeline, or by PPDS production or SNP production horizon. Scenario: We are planning cycle for 1 year where in we use 6 months con
-
Hi Experts, While doing MIRO, , the baseline date will be default as document date based on Payment Terms. But in my case, both invoice date and base line date is different. I assure that baseline date will set as default invoice date and it was chan
-
How do i retrieve my contacts after a ios6 download?
I just completed my iOS6 update. In my contacts all of the phone numbers are listed but no names, addresss or emails. How can I get this information back? I looked on the icloud but it's empty too. I checked my iTunes but I only see my music ther
-
What is the procedure to upload the data of the purchase order in the transaction ME21
-
How do I make a scaled PDF?
I created a documet in InDesign CS4 and can't figure out how to use the 'Adobe PDF Presets' function in the FILE dropdown menu to make a PDF at a reduced size. I recall having no problem doing this with the older version of InDesign. Any advice great