Failing to execute multiple commands using psexec
Trying to export hostname and disks that are in failed and predictive failure mode but psexec is failing to export hostname and predective failure disk information, it just giving failed disks information.
psexec \\<<HOSTNAME>> cmd /c HOSTNAME^&"c:\Program Files (x86)\Compaq\Hpacucli\Bin\hpacucli.exe" ctrl all show config |find "Failed|Predictive Failure"
As your command is written, the find is applied to the output of the entire
psexec command, not just hpacucli.exe. You need to escape the pipe character just as you did the ^&:
^|find. Also, if you're trying to look for
either "Failed" or "Predictive Failure" you're better off using the
findstr command:
^| findstr /c:"Failed" /c:"Predictive Failure"
Similar Messages
-
Using ProcessBuilder to execute multiple commands.
I am having issues getting ProcessBuilder to execute multiple commands in windows.
As an example I would like to execute "dir /w" fallowed by "java.exe some.App arg1 arg2".
I can accomplish this from the command line by using "&".
Example: dir /w & java.exe some.App arg1 arg2 Or: dir /w & dir /c"
For internal commands (i.e. dir and cd) I know that commands in the array being passed to ProcessBuilder must be formatted like {"dir /w", "dir /c"}
see post: [http://www.java-tips.org/java-se-tips/java.util/from-runtime.exec-to-processbuilder.html]
Here is an example of one of the many things I have tried:
{code}
String[] commands = new String[]{"dir /w", "&", "java.exe", "some.App", "arg1", "arg2"};
ProcessBuilder pb = new ProcessBuilder(commands);
pb.start();
{code}
Any other ideas / what am I doing wrong?
Edited by: brianjbrady on May 7, 2009 4:49 PM
Edited by: brianjbrady on May 7, 2009 4:50 PMbrianjbrady wrote:
You can run dir all day long without using cmd.exe. Try it. It works for me.Perhaps you have cygwin in your path.
How are you running dir out of interest (and don't say with a DOS window ;)
import java.io.*;
import java.util.Arrays;
public class Main {
public static void main(String... args) throws IOException {
run("dir");
run("dir.exe");
run("cmd", "/c", "dir");
run("c:\\cygwin\\bin\\dir");
private static void run(String... command) throws IOException {
try {
ProcessBuilder pb = new ProcessBuilder(command);
pb.redirectErrorStream(true);
Process p = pb.start();
InputStream is = p.getInputStream();
System.out.println("\nCommand " + Arrays.asList(command) + " reported");
int b;
while ((b = is.read()) >= 0)
System.out.write(b);
is.close();
p.destroy();
} catch (IOException e) {
System.err.println("\nCommand " + Arrays.asList(command) + " reported " + e);
}Prints
Command [dir] reported java.io.IOException: Cannot run program "dir": CreateProcess error=2, The system cannot find the file specified
Command [dir.exe] reported java.io.IOException: Cannot run program "dir.exe": CreateProcess error=2, The system cannot find the file specified
Command [cmd, /c, dir] reported
Volume in drive D is Work Disk
Volume Serial Number is AC0B-0757
Directory of D:\dev\scratch
26/12/2008 22:15 <DIR> .
26/12/2008 22:15 <DIR> ..
03/09/2007 21:45 <DIR> classes
26/08/2008 20:14 65,280 mynamedpipe
23/11/2008 11:37 201,354 name.ppt.txt
24/10/2008 20:00 201,354 race.txt
05/11/2008 23:17 6,193,334 record.csv
08/01/2009 16:44 704 scratch.iml
27/12/2008 12:29 21,576 scratch.ipr
08/05/2009 20:02 53,258 scratch.iws
28/04/2009 21:34 <DIR> src
07/12/2008 11:44 101 test.txt
8 File(s) 6,736,961 bytes
4 Dir(s) 32,506,023,936 bytes free
Command [c:\cygwin\bin\dir] reported
classes name.ppt.txt record.csv scratch.ipr src
mynamedpipe race.txt scratch.iml scratch.iws test.txt -
Executing multiple commands with sudo fails
Hi,
We're having trouble with sudo and bash. When we want to execute multiple commands and there are spaces, the commands don't run. Here's an example of what works:
[root@erpapp1-prod ~]# sudo -i -u oracle bash -c 'ls;pwd'
In this case, I get a listing of the files in /home/oracle followed by the current directory of /home/oracle.
Here's an example of what DOESN'T work:
[root@erpapp1-prod ~]# sudo -i -u oracle bash -c 'ls; pwd'
Notice the space before "pwd". In this case, all I get is the listing of files in /home/oracle.
Caveat: I'm a real beginner with Linux. I've compared many of the files (/home/oracle/.bash_profile, /home/oracle/.bashrc, /etc/bashrc, /etc/profile) from this server to another where we don't have issues and, other than some logic being in different order, don't see much of a difference. Again, very beginner here.
Any ideas? Thanks!
ToddWhat shows up as a space may not necessarily be a space. For instance, it could be some control character like a newline, which might interfere with the execution. For example:
$ test=`echo -e "test;\ntest"`
$ echo $test
test; test
$ echo "$test"
test;
test
Here is another example:
# test=`echo -e "ls;\npwd"`
# su - oracle -c "$test"
oradiag_oracle
/home/oracle
# su - oracle -c $test
oradiag_oracle
I cannot guess how you construct the command list. Perhaps the problem is a text files that was created under Windows and copied as binary to Linux, or a shell script using a different IFS environment variable, etc.
Personally I would use a different approach. From a security standpoint it is a bad idea to use passwords at the command prompt because every user can see them using the ps -ef output. -
[Solved] "slim: failed to execute login command" after awesomewm updat
Hi,
i updated some weeks ago via pacman -Syu, where also awesome wm was updated from 3.4.* to 3.5.* so I updated my rc.lua as it is told on their wiki, but i cant login with my rc.lua anymore i got the failed to execute login command error from slime. If i use the shipped efault rc.lua it works fine, can someone help me to figure out whats wrong with my rc.lua?
-- Standard awesome library
local gears = require("gears")
local awful = require("awful")
awful.rules = require("awful.rules")
require("awful.autofocus")
-- Widget and layout library
local wibox = require("wibox")
-- Theme handling library
local beautiful = require("beautiful")
-- Notification library
local naughty = require("naughty")
local menubar = require("menubar")
local vicious = require("vicious")
function fullscreens(c)
awful.client.floating.toggle(c)
if awful.client.floating.get(c) then
local clientX = screen[1].workarea.x
local clientY = screen[1].workarea.y
local clientWidth = 0
-- look at http://www.rpm.org/api/4.4.2.2/llimits_8h-source.html
local clientHeight = 2147483640
for s = 1, screen.count() do
clientHeight = math.min(clientHeight, screen[s].workarea.height)
clientWidth = clientWidth + screen[s].workarea.width
end
local t = c:geometry({x = clientX, y = clientY, width = clientWidth, height = clientHeight})
else
--apply the rules to this client so he can return to the right tag if there is a rule for that.
awful.rules.apply(c)
end
-- focus our client
client.focus = c
end
-- {{{ Error handling
-- Check if awesome encountered an error during startup and fell back to
-- another config (This code will only ever execute for the fallback config)
if awesome.startup_errors then
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, there were errors during startup!",
text = awesome.startup_errors })
end
-- Handle runtime errors after startup
do
local in_error = false
awesome.connect_signal("debug::error", function (err)
-- Make sure we don't go into an endless error loop
if in_error then return end
in_error = true
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, an error happened!",
text = err })
in_error = false
end)
end
-- {{{ Variable definitions
-- Themes define colours, icons, and wallpapers
-- beautiful.init("/home/kili/Repositories/awesome-themes/arch/theme.lua")
beautiful.init("/usr/share/awesome/themes/default/theme.lua")
-- This is used later as the default terminal and editor to run.
terminal = "urxvt"
editor = os.getenv("EDITOR") or "nano"
editor_cmd = terminal .. " -e " .. editor
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4"
-- Table of layouts to cover with awful.layout.inc, order matters.
layouts =
awful.layout.suit.tile,
awful.layout.suit.tile.left,
awful.layout.suit.tile.bottom,
awful.layout.suit.tile.top,
awful.layout.suit.floating,
awful.layout.suit.fair,
awful.layout.suit.fair.horizontal,
awful.layout.suit.spiral,
awful.layout.suit.spiral.dwindle,
awful.layout.suit.max,
awful.layout.suit.max.fullscreen,
awful.layout.suit.magnifier
-- {{{ Tags
-- Define a tag table which hold all screen tags.
tags = {}
for s = 1, screen.count() do
-- Each screen has its own tag table.
tags[s] = awful.tag({ 1, 2, 3, 4, 5}, s, layouts[1])
end
-- {{{ Menu
-- Create a laucher widget and a main menu
myawesomemenu = {
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awesome.conffile },
{ "restart", awesome.restart },
{ "quit", awesome.quit }
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
{ "open terminal", terminal }
mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, menu = mymainmenu })
-- {{{ Wibox
-- Create a textclock widget
batwidget = wibox.widget.textbox()
vicious.register(batwidget, vicious.widgets.bat,
function(widget,args)
local formatstring = " Bat: "..args[1]..args[2] .."%".. " "..args[3] .. " "
if args[2] <= 25 and args[1] == "-" then
return "<span color=\"red\">".. formatstring .. "</span>"
end
return formatstring
end, 60, "BAT0")
netwidgetETH = wibox.widget.textbox()
netwidgetWIFI = wibox.widget.textbox()
vicious.register(netwidgetETH, vicious.widgets.net, ' eth0:<span color="#CC9393">${eth0 down_kb}</span> <span color="#7F9F7F">${eth0 up_kb}</span>', 3)
vicious.register(netwidgetWIFI, vicious.widgets.net,' wlan0:<span color="#CC9393">${wlan0 down_kb}</span> <span color="#7F9F7F">${wlan0 up_kb}</span>', 3)
menubar.utils.terminal = terminal
mytextclock = awful.widget.textclock()--{ align = "right" })
-- Create a systray
mysystray = wibox.widget.systray()
-- Create a wibox for each screen and add it
mywibox = {}
mypromptbox = {}
mylayoutbox = {}
mytaglist = {}
mytaglist.buttons = awful.util.table.join(
awful.button({ }, 1, awful.tag.viewonly),
awful.button({ modkey }, 1, awful.client.movetotag),
awful.button({ }, 3, awful.tag.viewtoggle),
awful.button({ modkey }, 3, awful.client.toggletag),
awful.button({ }, 4, function(t) awful.tag.viewnext(aweful.tag.getscreen(t)) end),
awful.button({ }, 5, function(t) awful.tag.viewprev(aweful.tag.getscreen(t)) end)
mytasklist = {}
mytasklist.buttons = awful.util.table.join(
awful.button({ }, 1, function (c)
if c == client.focus then
c.minimized = true
else
c.minimized = false
if not c:isvisible() then
awful.tag.viewonly(c:tags()[1])
end
-- This will also un-minimize
-- the client, if needed
client.focus = c
c:raise()
end
end),
awful.button({ }, 3, function ()
if instance then
instance:hide()
instance = nil
else
instance = awful.menu.clients({ width=250 })
end
end),
awful.button({ }, 4, function ()
awful.client.focus.byidx(1)
if client.focus then client.focus:raise() end
end),
awful.button({ }, 5, function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end))
for s = 1, screen.count() do
-- Create a promptbox for each screen
mypromptbox[s] = awful.widget.prompt()--{ layout = awful.widget.layout.horizontal.leftright })
-- Create an imagebox widget which will contains an icon indicating which layout we're using.
-- We need one layoutbox per screen.
mylayoutbox[s] = awful.widget.layoutbox(s)
mylayoutbox[s]:buttons(awful.util.table.join(
awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end),
awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end)))
-- Create a taglist widget
mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.filter.all, mytaglist.buttons)
-- Create a tasklist widget
mytasklist[s] = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, mytasklist.buttons)
-- Create the wibox
mywibox[s] = awful.wibox({ position = "top", screen = s })
-- Widgets that are aligned to the left
local left_layout = wibox.layout.fixed.horizontal()
left_layout:add(mylauncher)
left_layout:add(mytaglist[s])
left_layout:add(mypromptbox[s])
-- Widgets that are aligned to the right
local right_layout = wibox.layout.fixed.horizontal()
if s == 1 then right_layout:add(wibox.widget.systray()) end
right_layout:add(netwidgetWIFI)
right_layout:add(netwidgetETH)
right_layout:add(batwidget)
right_layout:add(mytextclock)
right_layout:add(mylayoutbox[s])
-- Now bring it all together (with the tasklist in the middle)
local layout = wibox.layout.align.horizontal()
layout:set_left(left_layout)
layout:set_middle(mytasklist[s])
layout:set_right(right_layout)
mywibox[s]:set_widget(layout)
-- Add widgets to the wibox - order matters
--mywibox[s].widgets = {
-- mylauncher,
-- mytaglist[s],
-- mypromptbox[s],
--layout = awful.widget.layout.horizontal.leftright
-- mylayoutbox[s],
-- mytextclock,
-- batwidget,
-- netwidgetETH,
-- netwidgetWIFI,
-- s == 1 and mysystray or nil,
-- mytasklist[s],
-- layout = awful.widget.layout.horizontal.rightleft
end
-- {{{ Mouse bindings
root.buttons(awful.util.table.join(
awful.button({ }, 3, function () mymainmenu:toggle() end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
-- {{{ Key bindings
globalkeys = awful.util.table.join(
awful.key({ modkey, }, "Left", awful.tag.viewprev ),
awful.key({ modkey, }, "Right", awful.tag.viewnext ),
awful.key({ modkey, }, "Escape", awful.tag.history.restore),
awful.key({ modkey, }, "j",
function ()
awful.client.focus.byidx( 1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "k",
function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "w", function () mymainmenu:show() end),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end),
awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end),
awful.key({ modkey, }, "u", awful.client.urgent.jumpto),
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end),
-- Standard program
awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end),
awful.key({ modkey, "Control" }, "r", awesome.restart),
awful.key({ modkey, "Shift" }, "q", awesome.quit),
awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end),
awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end),
awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1) end),
awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1) end),
awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1) end),
awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1) end),
awful.key({ modkey, }, "space", function () awful.layout.inc(layouts, 1) end),
awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(layouts, -1) end),
awful.key({ modkey, "Control" }, "n", awful.client.restore),
-- Prompt
awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end),
awful.key({ modkey }, "x",
function ()
awful.prompt.run({ prompt = "Run Lua code: " },
mypromptbox[mouse.screen].widget,
awful.util.eval, nil,
awful.util.getdir("cache") .. "/history_eval")
end),
-- Multimedia
awful.key({ }, "XF86AudioLowerVolume", function () awful.util.spawn("amixer -q sset Master 2dB-") end),
awful.key({ }, "XF86AudioRaiseVolume", function () awful.util.spawn("amixer -q sset Master 2dB+") end),
awful.key({ }, "XF86AudioNext",function () awful.util.spawn( "mocp -f" ) end),
awful.key({ }, "XF86AudioPrev",function () awful.util.spawn( "mocp -r" ) end),
awful.key({ }, "XF86AudioPlay",function () awful.util.spawn( "mocp -G" ) end),
awful.key({ }, "Print", function () awful.util.spawn("ksnapshot") end),
awful.key({ }, "", function () awful.util.spawn("slimlock") end)
clientkeys = awful.util.table.join(
awful.key({ modkey, }, "f", function (c) c.fullscreen = not c.fullscreen end),
awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end),
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ),
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end),
awful.key({ modkey, }, "o", awful.client.movetoscreen ),
-- awful.key({ modkey, "Shift" }, "r", function (c) c:redraw() end),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end),
awful.key({ modkey, }, "n",
function (c)
-- The client currently has the input focus, so it cannot be
-- minimized, since minimized clients can't have the focus.
c.minimized = true
end),
awful.key({ modkey, }, "m",
function (c)
c.maximized_horizontal = not c.maximized_horizontal
c.maximized_vertical = not c.maximized_vertical
end),
awful.key({ modkey, "Shift" }, "f", fullscreens)
-- Compute the maximum number of digit we need, limited to 9
keynumber = 0
for s = 1, screen.count() do
keynumber = math.min(9, math.max(#tags[s], keynumber))
end
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it works on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, keynumber do
globalkeys = awful.util.table.join(globalkeys,
awful.key({ modkey }, "#" .. i + 9,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewonly(tags[screen][i])
end
end),
awful.key({ modkey, "Control" }, "#" .. i + 9,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewtoggle(tags[screen][i])
end
end),
awful.key({ modkey, "Shift" }, "#" .. i + 9,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.movetotag(tags[client.focus.screen][i])
end
end),
awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.toggletag(tags[client.focus.screen][i])
end
end))
end
clientbuttons = awful.util.table.join(
awful.button({ }, 1, function (c) client.focus = c; c:raise() end),
awful.button({ modkey }, 1, awful.mouse.client.move),
awful.button({ modkey }, 3, awful.mouse.client.resize))
-- Set keys
root.keys(globalkeys)
-- Set Firefox to always map on tags number 2 of screen 1.
-- { rule = { class = "Firefox" },
-- properties = { tag = tags[1][2] } },
-- {{{ Rules
if screen.count() > 1 then
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
-- border_color = beautiful.border_normal,
focus = true,
keys = clientkeys,
buttons = clientbuttons } },
{ rule = { class = "MPlayer" },
properties = { floating = true } },
{ rule = { class = "gimp" },
properties = { floating = true } },
{ rule = { class = "Xdialog" },
properties = { floating = true } },
{ rule = { class = "Firefox" },
properties = { tag = tags[1][1] } },
{ rule = { name = "Thunderbird" },
properties = { tag = tags[1][2] } },
{ rule = { instance = "plugin-container" },
properties = { floating = true } },
{ rule = { class = "Luakit" },
properties = { floating = true } }
else
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
-- border_color = beautiful.border_normal,
focus = true,
keys = clientkeys,
buttons = clientbuttons } },
{ rule = { class = "MPlayer" },
properties = { floating = true } },
{ rule = { class = "gimp" },
properties = { floating = true } },
{ rule = { class = "Firefox" },
properties = { tag = tags[1][2] } },
{ rule = { name = "Thunderbird" },
properties = { tag = tags[1][3] } },
{ rule = { instance = "plugin-container" },
properties = { floating = true, fullscreen = true } },
{ rule = { class = "Dolphin" },
properties = { floating = false, fullscreen = false, tag = tags[1][4] } },
{ rule = { class = "Luakit" },
properties = { floating = true } },
{ rule = { class = "Pidgin" },
properties = { tag = tags[1][5] } }
end
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.connect_signal("manage", function (c, startup)
-- Add a titlebar
-- awful.titlebar.add(c, { modkey = modkey })
-- Enable sloppy focus
c:connect_signal("mouse::enter", function(c)
if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier
and awful.client.focus.filter(c) then
client.focus = c
end
end)
if not startup then
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
-- awful.client.setslave(c)
-- Put windows in a smart way, only if they does not set an initial position.
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_overlap(c)
awful.placement.no_offscreen(c)
end
end
local titlebars_enabled = false
if titlebars_enabled and (c.type == "normal" or c.type == "dialog") then
-- Widgets that are aligned to the left
local left_layout = wibox.layout.fixed.horizontal()
left_layout:add(awful.titlebar.widget.iconwidget(c))
-- Widgets that are aligned to the right
local right_layout = wibox.layout.fixed.horizontal()
right_layout:add(awful.titlebar.widget.floatingbutton(c))
right_layout:add(awful.titlebar.widget.maximizedbutton(c))
right_layout:add(awful.titlebar.widget.stickybutton(c))
right_layout:add(awful.titlebar.widget.ontopbutton(c))
right_layout:add(awful.titlebar.widget.closebutton(c))
-- The title goes in the middle
local title = awful.titlebar.widget.titlewidget(c)
title:buttons(awful.util.table.join(
awful.button({ }, 1, function()
client.focus = c
c:raise()
awful.mouse.client.move(c)
end),
awful.button({ }, 3, function()
client.focus = c
c:raise()
awful.mouse.client.resize(c)
end)
-- Now bring it all together
local layout = wibox.layout.align.horizontal()
layout:set_left(left_layout)
layout:set_right(right_layout)
layout:set_middle(title)
awful.titlebar(c):set_widget(layout)
end
end)
client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
Here is also my slime config and my initrc
ls -lisa .xinitrc
3276814 4 -rwxr-xr-x ...
#!/bin/sh
xrdb -merge ~/.Xresources
wicd-client --tray &
exec awesome #>> ~/.cache/awesome/stdout 2>> ~/.cache/awesome/stderr
# Path, X server and arguments (if needed)
# Note: -xauth $authfile is automatically appended
default_path /bin:/usr/bin:/usr/local/bin
default_xserver /usr/bin/X
xserver_arguments -nolisten tcp vt07
# Commands for halt, login, etc.
halt_cmd /sbin/shutdown -h now
reboot_cmd /sbin/shutdown -r now
console_cmd /usr/bin/xterm -C -fg white -bg black +sb -T "Console login" -e /bin/sh -c "/bin/cat /etc/issue; exec /bin/login"
#suspend_cmd /usr/sbin/suspend
# Full path to the xauth binary
xauth_path /usr/bin/xauth
# Xauth file for server
authfile /var/run/slim.auth
# Activate numlock when slim starts. Valid values: on|off
numlock on
# Hide the mouse cursor (note: does not work with some WMs).
# Valid values: true|false
# hidecursor false
# This command is executed after a succesful login.
# you can place the %session and %theme variables
# to handle launching of specific commands in .xinitrc
# depending of chosen session and slim theme
# NOTE: if your system does not have bash you need
# to adjust the command according to your preferred shell,
# i.e. for freebsd use:
# login_cmd exec /bin/sh - ~/.xinitrc %session
login_cmd exec /bin/bash -login ~/.xinitrc %session
# Commands executed when starting and exiting a session.
# They can be used for registering a X11 session with
# sessreg. You can use the %user variable
# sessionstart_cmd some command
# sessionstop_cmd some command
# Start in daemon mode. Valid values: yes | no
# Note that this can be overriden by the command line
# options "-d" and "-nodaemon"
# daemon yes
# Available sessions (first one is the default).
# The current chosen session name is replaced in the login_cmd
# above, so your login command can handle different sessions.
# see the xinitrc.sample file shipped with slim sources
sessions awesome,xfce4,icewm-session,wmaker,blackbox
# Executed when pressing F11 (requires imagemagick)
screenshot_cmd import -window root /slim.png
# welcome message. Available variables: %host, %domain
welcome_msg Welcome to %host
# Session message. Prepended to the session name when pressing F1
# session_msg Session:
# shutdown / reboot messages
shutdown_msg The system is halting...
reboot_msg The system is rebooting...
# default user, leave blank or remove this line
# for avoid pre-loading the username.
default_user kili
# Focus the password field on start when default_user is set
# Set to "yes" to enable this feature
focus_password yes
# Automatically login the default user (without entering
# the password. Set to "yes" to enable this feature
#auto_login no
# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme archlinux-simplyblack
# Lock file
lockfile /var/lock/slim.lock
# Log file
logfile /var/log/slim.log
Thanks in advance!
Edit:
Besides a lot of other errors the problem was the systray. It was created 2 times, now login works again. I figured that out via enabling logging for awesome in the xinitrc again.
Last edited by stubb (2013-01-08 23:20:05)Hi,
I have the same kind of issue after updated slim from v1.3.4-4 to v1.3.5-1.
see my topic here :
https://bbs.archlinux.org/viewtopic.php?id=156792
Last edited by cedricl (2013-01-24 17:16:42) -
Can we execute multiple tasks using emcli
Hi,
I know we can execute any task on target using emcli but just wondering if we can execute multiple command in one emcli execution,
also does any one has any idea about how to pass the target variables in emcli command.
Thanks,
RituHi Salman,
Thanks for your reply but I do not want to use deplyoment procedured as this means for patching and provisioning related tasks,
I want to automate the health checks using EMCLI and for that I can use submit job verb of emcli,
I just wanted to if i have multiple command to pass to emcli,how to do that ?
Regards,
Ritu -
How to place multiple commands using lcdui package?
I want to place multiple commands using lcdui package. I find that if I use more than 3 it becomes a menu item. How to circumvent this?
With regards,
Amini dont think you would be able to do this because of the screen size and also because all the cell phones only provide back,exit & menu buttons to program.so thats why you need to place the commands in the screen if the number of options are more.
-
Bash function/script to execute multiple commands on same output
Occasionally, I come across the need to pass the output of a single command to multiple others (without piping each to the next), so today, I wrote a [very] simple Bash script to accomplish the task. Piping the output of a command to `tree' is much like piping it to `tee', except `tree' allows you to execute multiple commands on the same output, rather than only writing to log files:
#!/bin/bash
# tree -- pipes the output of one command to >= 1 other
# Usage: command | tree 'command 1' 'command 2'
doc=$( cat - )
for arg in "$@"; do
bash -c "${arg}" <<EOF
${doc}
EOF
done
An example of its usage:
$ echo -e "1 2 3\n4 5 6" | tree 'grep 1' 'grep 4' "grep 1 | tee grep.log | awk '{print \$2}'"
1 2 3
4 5 6
2
$ cat grep.log
1 2 3
Though not elaborate, the script gets the job done.
Last edited by deltaecho (2009-03-10 20:34:01)Xyne wrote:
You could always call it "the Ukrainian Pipe"
(if you can't laugh at this, you either need to loosen up or make a point to follow (annual) current events)
That was a good one -
how to execute multiple commands through java programming .I tried with the code
Process pro=Runtime.getRuntime().exec("cmd /c cd C:\\Symbian\\Carbide\\MyXmlParserWeb\\group\\s60_3rd");
pro.waitFor();
BufferedReader reader=new BufferedReader(new InputStreamReader(pro.getInputStream()));
String line=reader.readLine();
while(line!=null)
System.out.println(line);
line=reader.readLine();
for(int i=0;i<2;i++){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Process pro4=Runtime.getRuntime().exec("bldmake clean");
pro.waitFor();
BufferedReader reader4=new BufferedReader(new InputStreamReader(pro4.getInputStream()));
String line4=reader4.readLine();
while(line4!=null)
System.out.println(line4);
line4=reader4.readLine();
for(int i=0;i<2;i++){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Process pro1=Runtime.getRuntime().exec("bldmake bldfiles");
pro1.waitFor();
BufferedReader reader1=new BufferedReader(new InputStreamReader(pro1.getInputStream()));
String line1=reader1.readLine();
while(line1!=null)
System.out.println(line1);
line1=reader.readLine();
for(int i=0;i<2;i++){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}class MainClass extends Thread {
InputStream is;
String type;
OutputStream os;
MainClass(InputStream is, String type)
this(is, type, null);
MainClass(InputStream is, String type, OutputStream redirect)
this.is = is;
this.type = type;
this.os = redirect;
public void run()
try
PrintWriter pw = null;
if (os != null)
pw = new PrintWriter(os);
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null)
if (pw != null)
pw.println(line);
System.out.println(type + ">" + line);
if (pw != null)
pw.flush();
} catch (IOException ioe)
ioe.printStackTrace();
public static void main(String args[])
if (args.length < 1)
System.out.println("USAGE java GoodWinRedirect <outputfile>");
System.exit(1);
try
FileOutputStream fos = new FileOutputStream(args[0]);
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("cmd.exe");
// any error message?
MainClass errorGobbler = new
MainClass(proc.getErrorStream(), "ERROR");
// any output?
MainClass outputGobbler = new
MainClass(proc.getInputStream(), "output", fos);
// kick them off
errorGobbler.start();
outputGobbler.start();
// any error???
int exitVal = proc.waitFor();
System.out.println("ExitValue: " + exitVal);
fos.flush();
fos.close();
} catch (Throwable t)
t.printStackTrace();
i have modified the code again.but still no result..... -
Executing a command using Runtime Class
How to execute a command on a differnet machine with different ipaddress using Runtime Class
My code is
String[] cmd = new String[3];
cmd[0] = "192.1...../c:/WINNT/system32/cmd.exe" ;
cmd[1] = "/C" ;
cmd[2] = args[0];
Runtime rt = Runtime.getRuntime();
System.out.println("Execing " + cmd[0] + " " + cmd[1]
+ " " + cmd[2]);
Process proc = rt.exec(cmd);
// any error???
int exitVal = proc.waitFor();
System.out.println("ExitValue: " + exitVal);
This is not WorkingI have same issue. Actually when I use cmd.exe /c set in java code and if I run the java code in DOS propmt, it retrieves all latest user Environment variable values. But if I run the code in windows batch file, it is not retrieveing the latest user environment values until I reboot my computer, Do you know how to get user environment value with out rebooting machine??????
-
Getting an error while executing ddl commands using dblink
Hi,
i am using Oracle9iR2 Version.
i have created a procedure like below to execute ddl commands on remote database through dblink using dbms_sql.
CREATE OR REPLACE PROCEDURE run_remote_ddl (p_dblink VARCHAR2, qry VARCHAR2)
AS
c_handle NUMBER;
feedback INTEGER;
stat VARCHAR2 (2000);
BEGIN
stat := 'select DBMS_SQL.open_cursor' || p_dblink || ' from dual';
EXECUTE IMMEDIATE stat
INTO c_handle;
stat :=
'begin DBMS_SQL.parse'
|| p_dblink
|| ' ('
|| c_handle
|| ','''
|| qry
|| ''', DBMS_SQL.v7); end;';
EXECUTE IMMEDIATE stat;
stat :=
' select DBMS_SQL.EXECUTE' || p_dblink || '(' || c_handle
|| ') from dual';
EXECUTE IMMEDIATE stat
INTO feedback;
stat :=
'declare x integer; begin x:= :1; DBMS_SQL.close_cursor'
|| p_dblink
|| '(x); end;';
EXECUTE IMMEDIATE stat
USING c_handle;
END;
when i run this procedure like below
begin
run_remote_ddl ('@dblink', 'create table scott.ttt(num number)');
end;
got an error:
ORA-06553: PLS-103: Encountered the symbol ".2" when expecting one of the following:
. ( * @ & = - + ; < / > at in is mod not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between ||
The symbol ". was inserted before ".2" to continue.
ORA-06512: at RUN_REMOTE_DDL", line 9
ORA-06512: at line 2
Please tell me how to resolve this.
Thanks in advance.Hi,
>
ORA-06553: PLS-103: Encountered the symbol ".2" when expecting one of the following:
. ( * @ & = - + ; < / > at in is mod not rem
<an exponent (**)> or != or ~= >= <= <> and or like
between
>
Hope you are not typing 2 instead of @ as both are on the same key
Can you run the following and see what is happening
CREATE OR REPLACE PROCEDURE run_remote_ddl (p_dblink VARCHAR2, qry VARCHAR2)
AS
c_handle NUMBER;
feedback INTEGER;
stat VARCHAR2 (2000);
BEGIN
dbms_output.put_line(p_dblink);
stat := 'select DBMS_SQL.open_cursor@dblink from dual';
--stat := 'select DBMS_SQL.open_cursor from dual';
EXECUTE IMMEDIATE stat
INTO c_handle;
END;
exec run_remote_ddl('@dblink', 'create table scott.ttt(num number)');Regards
Edited by: yoonus on Feb 20, 2013 3:47 AM -
Problem while executing a command using exec()
I'm trying to execute a command on Unix O/S with the help of java program. For this I have used Runtime class available in java.lang. It works fine for some of the basic unix commands like 'ls','cp' but when I tried to execute command "sqlldr userid=<user>/<pwd> control=/u01/dw/snb/log/sp_shd05721_ins_stg_sqlldr.ctl" , then it's not getting executed. Please advise.
You may be having a problem with the command path, which I don't think Runtime.exec() uses. Try specifying the full path
-
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 ........... -
To execute external command using RFC_REMOTE_exec
Hi
i want to execute the ext command using RFC_REMOTE_EXEC .
i have used like below in WINDOWS XP:
data: v_cmnd(120) type C VALUE 'dir C:\SAP\rfcsdk\bin >RFEXEC -D ESM_R'.
call function 'RFC_REMOTE_EXEC' destination D_DESTI
exporting
command = v_cmnd
exceptions
system_failure = 1 message D_ERMSG
communication_failure = 2 message D_ERMSG.
manually at command line the program getting registerd but
not throuergh RFC_REMOTE_EXEC
in v_cmnd what is the exact value we have to give
Regardsyou create the command in SM69 with some name and Directly give the Same name when you are executing.
Check this Function also.
SXPG_COMMAND_EXECUTE -
Execute SQLPLUS command using JDBC
Hi,
I was wondering if its possible to execute sqlplus command (eg set define off, change date format ..etc) using JDBC ?
Can anyone please post me some sample codes about this ?
Any help will be appreciatedHi,
But the Runtime.exec() and the JDBC application have
their own connection to the database, and the sqlplus
commands that i need to run are session based (only
valid during the connection). eg set define off
How do I overcome this ?
Huh?
You put anything you want into a input file. You feed the input file to sqlplus. If there are results then you put them into an output file.
None of that has anything to do with JDBC nor even with java. When you call Runtime.exec() you are running a completely different process. What you do with that process is up to you. -
Executing Multiple Commands (Runtime Class)
granting that Runtime class could execute a command.
Is it possible to execute a list of commands in
just one process, for example "cd\javasdk" followed by "dir *.java".
Any idea to do this?
Thnx in advance.Execute either a script (a batch file) containing all commands or execute the command interpreter (sh, bash, cmd.exe) and feed it through its standard input.
Maybe you are looking for
-
Error while deploying in NetWeaver Developer Studio
hi I am getting an error while I am trying to deploy an portal application into the portal. It is saying that operation failed: Please make sure the server is running and the alias name is correct. anybody can help me in this issue. thanks krish
-
i play framville on this broser because at one time it was faster now i cannot even read a post w/o it sayingnot responding i have a new comp 3 mon old no virus no trojan and I am not dumb but no matter what i do i get the same message fb says it is
-
Guitar going in the line in on an x-
Hello all?I am just curious as to how well?my guitar?is going to perform through my Xtrememusic card. I am going to use a Behringer blues stomp box between guitar and PC, a blues pedal that outputs at k ohm. Is this going to work ok?. I have the driv
-
Back ground job for cleaning for Transport buffer
Hi Folks, We are going to use some tool for transports from future so before that to implement that tool we need to clean the transport buffer by scheduling some background job. Can you please let me know is there any background job as
-
Slide presentation loading bar
Hello, Is there a way I can add a loading bar to each slide in a presentation? I want to create a frontpage component for a web site using Flash CS3 Slide Presentations. I have several flash movies that I want loaded into the presentation and then us