Xcommand - run commands in X server

xcommand is a very small and simple script I made.
Essentially you start "xcommand --daemon &" when X starts and it binds to a unix socket.
You can then pass a command to it using "xcommand <command>" and xcommand will run this command, e.g. "xcommand notify-send testing"
aur package: https://aur.archlinux.org/packages/xcommand

Updated to 0.1.1
I have this problem to nc.openbsd and unix sockets where it locks up or something with 100% cpu usage, so i added customization where if you have a ~/.xcommandrc it will source it for the variables NC_LISTEN and NC_WRITE and i made one for myself which binds to a tcp socket instead. e.g.
#!/bin/bash
NC_LISTEN="nc.openbsd -lk localhost 1234"
NC_WRITE="nc.openbsd localhost 1234"
I don't know if other people have this problem with nc.openbsd and unix sockets so for now the defaults remain to bind to a unix socket (~/.xcommand.socket)
EDIT: Updated to 0.1.1-2, removed line when it would delete socket on exit
Last edited by BennyBolton (2012-11-16 23:03:42)

Similar Messages

  • SSH SUDO passwordless to run commands on remote server

    Hi Experts,
    We are running various OS/Network and Database related commands and scripts on Local and Remote Server to perform/compare the results
    As part of this activity, we have bottleneck on running commands/scripts on the remote server as we need to provide password everytime whenever we use SSH command
    Also, we need to run command as ssh sudo su - oracle for security purpose which prompts password two times.
    we would like to automate this process in order to save password securely(temporarily) while running ssh sudo commands/scripts.
    I see, there are various solutions using SSHPASS,EXPECT commands, however we dont have anything available to use within our group.
    We may not be able to use SSHPASS as this component not installed during VM build, so we left with only option to use EXPECT.
    So, Need your help to get any example working script using EXPECT for ssh sudo passwordless connection.
    Appreciate if anybody can share ideas or working scripts
    Thanks in advance

    FWIW, here is a small script that I wrote several years ago that may help you to automate the password less ssh setup with a remote system. I just verified it and changed it to create a RSA key. The script still works and runs fine under Oracle Linux and Mac OS X.
    Simply create a script called "passwordless-ssh" with the content shown below.
    Assign execute privileges: chmod u+x passwordless-ssh
    Then run the script as following:
    ./passwordless-ssh user@target_hostname_or_ip
    The script will create a ssh RSA private and public key, prompt for the remote host password and the copy the pubic key to the remote host. A subsequent ssh login to the remote host should no longer prompt for the password. It is essential however that the scrips runs in an interactive session, which is verified.
    #!/bin/bash
    # Creating SSH public RSA key if non exist and copying it to remote target
    # for passwordless SSH login.
    # Author: Catch 22, Oracle OTN, 28-APR-2015
    # Arguments: $1 (ssh login to remote target)
    ME=passwordless-ssh
    LOGFILE="/tmp/$ME.log"
    f-mode()
    # Check if session is interactive (terminal) or non-interactive (UDEV).
    # Output: 0 = interactive, 1 = non-interactive
       [[ -t 0 || -p /dev/stdin ]] && return 0 || return 1
    f-log()
    # Display messages in interactive mode, or write output to syslog
    # (/var/log/messages) when in non-interactive mode. Write the messages
    # to a logfile if the syslog logger interface command is not available.
    # Input: $1 = text
       if f-mode; then
          echo "$ME: $1"
       elif hash logger; then
          logger "$ME: $1"
       else
          echo "$ME:`date`: [logger] Cannot execute, aborting" >> $LOGFILE
          echo "$ME:`date`: $1" >> $LOGFILE
       fi     
    # Exit and show error if current session is not interactive.
    [ ! f-mode ] && f-log "[session] non-interactive, aborting" && exit 1
    keyfile="$HOME/.ssh/id_rsa"
    [ -z "$1" ] && echo "Missing 'user@target_host' argument. Aborted." && exit 1
    if [ ! -f $keyfile ]; then
       mkdir -p $HOME/.ssh
       ssh-keygen -t rsa -f $keyfile -N ''
    fi
    keycode=`cat $keyfile.pub`
    remote_cmd2="echo "$keycode" >> $remote_ssh_file; chmod 644 $remote_ssh_file;"
    remote_ssh_dir="~/.ssh"
    remote_ssh_file="$remote_ssh_dir/authorized_keys"
    ssh -q $1 "mkdir -p $remote_ssh_dir; chmod 700 $remote_ssh_dir
    echo "$keycode" >> $remote_ssh_file; chmod 644 $remote_ssh_file"
    unset ME LOGFILE keyfile keycode remote_ssh_dir remote_ssh_file
    #END

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

  • BO Edge 4.0 Installer stuck on "Run command-line executable"

    Hi,
    Our BO Edge BI Server 4.0 Installer on Windows Server 2008R2 is stuck on one of the last steps; "Run command-line executable".
    Before is was stuck on "WaitForCMSForTheFirstTime". We upped the RAM to 16GB and then the installer went past this, but after a full reset of the server and trying again it is now stuck a few steps later on "Run command-line executable". This is very frustrating, especially since there is no error message at all, no install log and the installer is just stuck indefinitely and we had to cancel it.
    At that point the Central Configuration Manager shows this:
    Apache Tomcat - Running
    BW Publisher Service - Stopped
    SAP BO Mobile Authentication Server - Stopped
    SAP BO Mobile Processing Server - Stopped
    Server Intelligence Agent - Running
    We can't deinstall from Windows to start over at this point because the installer says an install is in progress.
    What is going on?
    Help urgently needed and appreciated
    Edited by: J. Knulst on Jan 11, 2012 7:48 AM
    Edited by: J. Knulst on Jan 11, 2012 7:50 AM

    Hello,
    Yes, certain stages run for a long duration. "Run command-line executbale" runs for atleast 45 mins. It's normal.
    My suggestion would be to leave it for 45 mins-90 mins.
    Now that you have interrupted your installtion, try uninstalling it through the control panel.
    In case you can't see the software there, then you have to edit registry entries, which is very tiresome.
    Regards,
    Sonia

  • Run commands in new tab in Terminal.app

    hello, i want to know is there a way to run commands and these opens a new tab in terminal.app.
    i know i can open a new tab with cmd+t , but i have a folder with hundreds of files with the name [email protected] and each file has the string ssh://username@server...
    i use these folder in the dock like a bookmark of servers that i administrate, if i set that ssh default is the app iTerm.app then every of these file i execute opens in a new tab of iTerm, but if i set ssh default to Terminal.app for every file open a new windows of Terminal.
    I would like to use Terminal.app if somebody help to find a way to open these conections in a new tab.
    You can try to open the terminal.app, them in safari type ssh://localhost... and you see a new window of terminal.
    Sorry for my bad english
    Regards
    Diego.

    I wonder if you're too tied to one solution. I do a very, very similar thing to what you're doing, except that I support 900 or so machines (I work for a hosting provider -- so, I'm not kidding.. promise!).
    The basics of my setup are as such:
    I have the host names of all the servers in a text file. In my .bash_profile I have a routine that loops through each server name and, if needed, generates a bash script named for the server in a directory I've set up in my path (~/bin/hosts). That file has the command string for ssh that I use to connect to the server in it. For example, for a server named 'foo', I'd have a file named '~/bin/hosts/foo', and the contents would look something like this:
    ssh -X username@foo
    This is the part I really like. I create each one as it's own bash script so that it can be found and indexed by spotlight, which I use as my app launcher. So, once each script has been created, all I have to do is cmd-space (to open spotlight) then type in the server name to continue. This works great except that it opens a new window every time. So annoying. As of today, though, I now have a new bash script:
    tab ssh -x username@foo
    A very small change, but with a huge effect. The other change is that I put the "tab" subroutine in a bash script in my path as well. So, now when it launches the ssh command it's in a new tab. Exactly as I wanted.
    I'm hoping this will help you. Even if not, though, try to remember to keep an open mind. I know the "url" scheme you're using works well, but I actually prefer my way (of course.. I made it up ). Whichever way you go, I wish you the best of luck.
    Cheers,
    4

  • New command for radius-server source-ports

    I am trying to find the new command fro radius-server source-ports 1645-1646 since it appears to be depricated.  We use tacacs so we do not have the radius server specified but we do need to put in the ports.  Can someone please tell me the new command for radius-server source-ports?
    Thanks

    Both of the links that Peter posted are interesting and helpful. I would like to take a slightly different approach in answering your question.
    In every version of IOS there are certain commands that get inserted into running-config when a particular feature is activated. It looks like in your version the radius-server source-ports is one of those commands. I do not think it is anything that you should be concerned about.
    And I do not believe that having the radius-server source-ports command would prevent TACACS from working. I believe that there is likely to be some fault in your configuration. If you would post the aaa parts of the config then maybe we could see what the problem is.
    In my experience configuring aaa some of the common problems include not correctly identifying the TACACS server, not having exactly the same key configured on the Cisco device and the TACACS server, not having connectivity to the TACACS server (can the Cisco device ping the server, and can the server ping the device), or errors in the authentication or authorization prameters specified.
    Post some information and we will see what we can do.
    HTH
    Rick

  • Could not execute command "getState" for server server01 using nodemanager

    Hi,
    I have built a weblogic 9.1 env with 2 managed servers running on different boxes from the admin server.
    I am having problems in starting the managed servers using the nodemanager. I get the following error message in the Admin server log:
    <Error> <NodeManager> <BEA-300034> <Could not execute command "getState" for server "******" using the node manager. Reason: I/O error while reading domain directory: java.io.FileNotFoundException: Domain directory '/opt/bea/weblogic91/common/nodemanager' invalid (domain salt file not found).>
    I get the following message on the admin console:
    For server ******, the Node Manager associated with machine ******-machine is not reachable.
    All of the servers selected are currently in a state which is incompatible with this operation or are not associated with a running Node Manager. No action will be performed.
    I can start the managed server using the "startMangedWeblogic.sh" without any issues.
    Any help on this would be greatly appreciated.
    Thanks

    one more thing to add:
    I get the following error in the Managed server log:
    <I/O error while reading domain directory: java.io.FileNotFoundException: Domain directory '/opt/bea/weblogic91/common/nodemanager' invalid (domain salt file not found)>
    java.io.FileNotFoundException: Domain directory '/opt/bea/weblogic91/common/nodemanager' invalid (domain salt file not found)
    at weblogic.nodemanager.server.DomainManager.initialize(DomainManager.java:74)
    at weblogic.nodemanager.server.DomainManager.<init>(DomainManager.java:46)
    at weblogic.nodemanager.server.NMServer.getDomainManager(NMServer.java:239)
    at weblogic.nodemanager.server.Handler.handleDomain(Handler.java:170)
    at weblogic.nodemanager.server.Handler.handleCommand(Handler.java:104)
    at weblogic.nodemanager.server.Handler.run(Handler.java:64)
    at java.lang.Thread.run(Thread.java:595)

  • How to "telnet" and run commands on another computer?

    I have a Unix program. I need this to "telnet" to a Windows computer and run commands (via the prompt in Windows). Is there a way to do this in java?
    Also it is something that will be a cron job so the password will be stored in a file rather than the user typing it at the screen. There is no GUI. There is no server or java process running on Windows at the time. The Unix program needs to connect to Windows only when needed.

    Try enabling the Windows telnet server, use a regular telnet client and check if it is enough for your needs.
    Several commands in Windows apparently could be run in command-line mode using telnet, but for some reason they don't work very well. For instance, they could be using some special console-mode APIs for hiding the cursor or drawing characters in different colors, that simply will not be echoed by the telnet server.
    I remember when I've tried to use the osql tool (a command-line interface) of MS SQL Server in a Windows telnet server session. Some things simply didn't work.

  • Unix Perl Script To verify a Up and Running Database on Different Server

    Unix Perl Script To verify a Up and Running Database on Different Server
    Hi
    can any one please tell me a solution to verify a Up and Running Database on Different Server other than the one where we run the unix perl script? The perl script should check if the database is running else it must exit.
    Thanks much
    Kiran

    The other best solution would be Enterprise Manager, load the EM on the other machine and install oracle intelligent agent on all the boxes where oracle is running and problem solved.
    FTP is only a File Transfer Protocol, you can upload/download the files but cant execute them.
    Apart from EM the best way is load oracle client and make connection to all the databases.
    AND There are some free oracle monitoring software available I dont know much about them but one is NAGIO (if I am not wrong), try that if you want.
    BTW whats the problem in monitoring the boxes from the same physical box, means just schedule a script using cron on the same physical box where oracle is to either make connection using SQLPLUS or check the processes using "ps" command and if there is anything wrong then send alert from that box only. In this way there is no need to maintain a central monitoring server.
    Daljit Singh

  • BAM Deployment error - Microsoft.BizTalk.Bam.Management.BamManagerException: The BAM deployment failed. --- Microsoft.BizTalk.Bam.Management.BamManagerException: Encountered error while executing command on SQL Server "ServerName".

    HI,
    I am getting below error while deploying BAM activity ...Pls help me resolve this issue.
    Microsoft.BizTalk.Bam.Management.BamManagerException: The BAM deployment failed. ---> Microsoft.BizTalk.Bam.Management.BamManagerException: Encountered error while executing command on SQL Server
    "ServerName". ---> System.Data.SqlClient.SqlException: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or
    [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed.
    Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias
    to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An
    object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column
    name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing
    or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For
    SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements,
    verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column
    has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For
    other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements,
    look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) 
     at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock,
    Boolean asyncClose)   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)   at
    System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean
    sendToPipe, Int32 timeout, Boolean asyncWrite)   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()   at Microsoft.BizTalk.Bam.Management.SqlHelper.ExecuteBatches(String cmdText)   at Microsoft.BizTalk.Bam.Management.SqlHelper.ExecuteNonQuery(String
    cmdText, CommandType cmdType, Boolean inTransaction, Transaction transaction)   --- End of inner exception stack trace ---   at Microsoft.BizTalk.Bam.Management.SqlHelper.ExecuteNonQuery(String cmdText, CommandType cmdType, Boolean inTransaction,
    Transaction transaction)   at Microsoft.BizTalk.Bam.Management.ViewModule.Create(XmlDocument defXmlDoc)   at Microsoft.BizTalk.Bam.Management.WorkerModule.DispatchOperation(OperationType operation, XmlDocument defXmlDoc)   at
    Microsoft.BizTalk.Bam.Management.BamManager.ProcessOneBamArtifactType(BamArtifactType bamArtifact, OperationType operation)   at Microsoft.BizTalk.Bam.Management.BamManager.ManageInfrastructure(OperationType operation)   at Microsoft.BizTalk.Bam.Management.BamManager.Deploy() 
     --- End of inner exception stack trace ---   at Microsoft.BizTalk.Bam.Management.BamManager.Deploy()   at Microsoft.BizTalk.Bam.Management.BamManagementUtility.BamManagementUtility.HandleDeployAll()   at Microsoft.BizTalk.Bam.Management.BamManagementUtility.BamManagementUtility.DispatchCommand() 
     at Microsoft.BizTalk.Bam.Management.BamManagementUtility.BamManagementUtility.Run()   at Microsoft.BizTalk.Bam.Management.BamManagementUtility.BamManagementUtility.Main(String[] args)

    Your View Name, OLAP Cube Name and certain other restrictions listed @http://msdn.microsoft.com/en-us/library/aa561577.aspx
    Please review your BAM Definitons.
    Regards.

  • Starting DOS command on a server

    Hi all!
    I am not sure whether I my problem can be solved in this forum, but I try it, as it seems like a common problem:
    I have a server, let's say "live01", which has different programs running, that can be monitored over some commands which can only be executed from a DOS box, on this ("live01") server. This server, also acts as the web server for distributing my new JWS (Java Web Start) application which graphically shows the status of the programs running on the "live01"-server.
    My application should be visible to the whole company (that's why I use JWS), although only a few people would have access rights to the "live01"-server, where the monitored programs are actually running.
    As you could guess from the lines above, I need to call the DOS command on the "live01"-server from my locally running application (and get the results back).
    NOW the PROBLEM: I do not know how to call this DOS commands (on the "live01"-server) from the local PC where the JWS application runs. When I use
    Runtime.getRuntime().exec(someCommand);
    this is surely executed on the local PC, where I do not have the tools to monitor the programs on the server!
    PLEASE HELP!!!!!!!!!!!!!!
    thanks
    nocomm

    Are you only interesting in starting the program or start it and get result from it ?
    to start the program, just execute the line:
    String file = "";
    file = System.getProperty("user.dir")
    + System.getProperty("file.separator")
    + "your_program.exe";
    try{Runtime.getRuntime().
    exec("rundll32.exe shell32.dll,ShellExec_RunDLL " + file);
    catch(Exception g) {
    g.printStackTrace();
    on your java server...
    or is that a problem for you ??

  • Is there NO localhost command in OSX Server?

    when i type in localhost in the browser on my osx server i get 'cannot find server'.
    is there no localhost command on the server?
    I have no DNS running, as my old hosting company is providing it. so all the computers are on my system are pointing to the router. i have also reserved a static lan ip for the server, which it is registered to.
    weird thing is i can ping localhost and 127.0.0.1 and it works. is this a dns thing? and why if i'm not running dns

    is there no localhost command on the server?
    There's no 'localhost' command on OS I'm aware of.
    when i type in localhost in the browser on my osx server i get 'cannot find server'.
    That means you're not running a web server on your machine - you're asking your browser to connect to a web server on the local machine, but there isn't one running. If you want to run a web server, start it up using Server Admin.

  • Move database from server running Oracle 11G to server running Oracle 12c

    I'm trying to find out the easiest way to migrate a database from a server running Oracle 11G to a server running Oracle 12c. I have tried using RMAN's duplicate database command but have run into far too many issues when trying to setup both servers before running the duplicate command.  If someone could provide some clear guidance on configuring both servers for the RMAN Duplicate command then that would be great.  The other thing I have tried is performing a cold backup of all the files for the database (control files, data files, etc.).  Copying them to the new server and then recreating the control file to include the correct location and names for the datafiles and redologs.  After recreating the control file the database will not start up.  I'm suspecting this is due to the version differences. If you can provide me clear (ie. migration for dummies) instruction for getting either of these methods to work it would be greatly appreciated.  I'm also open to any other method you can think of to achieve what I'm trying to accomplish. Thanks, Paul Noyes

    Pl do not post duplicates - Move database from server running Oracle 11G to server running Oracle 12c

  • Postscript file with the RUN command

    I have inherited some code that I'm trying to fix.   The postscript file contains a 'RUN' command.  When I try to open the file, I get the error unable to recognize the command.  Understandable since that command does not reside on my server.  It resides on a UNIX box which controls the printer.  However when I try to print the file to the printer nothing happens.  Neither is the command run and the results printed out nor the contents of .PS file is printed.  Please help.

    I have included an old PostScript program I wrote from the early 1990's that will print a directory of the interpreter's file system, which is a good place to start.
    If there are no files matching the string FG530 then you are out of luck, unless you can find it and download it to the PostScript file system again.
    I added the commented lines about file paths and the included image is of the first page of the generated output:
    %!PS-Adobe
    %%Creator: Marvin R. Horton, Macore Company, Inc.
    %%BeginProc:
    /Buff 100 string def /Wipe 100 string def
    /Rebuff {Buff 0 Wipe putinterval} def
    /startpage {18 756 moveto gsave (P O S T S C R I P T   F I L E   S Y S T E M   D I R E C T O R Y ) show 400 0 rlineto .5 setlinewidth stroke
      grestore 0 -6 rmoveto}def
    /Dir {0 -6 rmoveto gsave Buff show Rebuff grestore
    currentpoint 6 sub 30 lt{450 eq{showpage startpage}{144 720 rmoveto}ifelse}if }def
    %%EndProc:
    /Courier findfont 6 scalefont setfont
    startpage
    (*) {Dir} Buff filenameforall
    %%How to get file list from a subdirectory of...: (fonts/*) {Dir} Buff filenameforall
    %%How to get file list within specific naming "FG...": (FG???) {Dir} Buff filenameforall
    showpage

  • NAC Custom Check to run command

    hi,
    i have a case where i want to check whether the computer has join the microsoft domain or not.
    after searching, i found the effective way is to run command nltest.exe. nltest.exe is a command to check trust relationship between workstation and domain controller.
    is there any way that custom check can do this ? in CAM document, only registry, file, service, and application check.
    this is the link from Microsoft : http://support.microsoft.com/kb/158148
    example:
    C:\>nltest /server:test3 /sc_query:testd
    Flags: 0
    Connection Status = 0 0x0 NERR_Success
    Trusted DC Name \\TEST2
    Trusted DC Connection Status Status = 0 0x0 NERR_Success
    The command completed successfully
    Can Clean access agent do the command line check and interpret the result ?
    thanks,
    yd

    The Cisco NAC Agent will not able to run and interpret the command output.
    If the goal is to check whether the computer is a member of a known domain, you can check 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Domain' to contain the name of the domain.
    -Dan

Maybe you are looking for