---
name: "xmovectrl"
section: "1"
platform: "linux"
package: "xmove"
version: "2.0beta2-8"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/xmovectrl"
---

# xmovectrl(1)

xmove control program

## NAME

xmovectrl - xmove control program

## SYNOPSIS

**xmovectrl** \[ *xmove\_DISPLAY* \]  *command* \[ *args* \] ...

## DESCRIPTION

**xmovectrl** is a command program which sends commands to an **xmove** pseudoserver. The commands allow you to obtain a list of clients  under control of the **xmove,** to move some or all clients to a new server, or to tell xmove to exit.

The environment variable **DISPLAY** is used to determine the **xmove** to access, since access to  **xmove** is through a standard X connection. This default can be overridden by specifying the display connection for the **xmove** pseudoserver as  *xmove\_DISPLAY* on the command line.

Because  **xmove** supports host-level and **MIT-MAGIC-COOKIE-1** security, any connection from an  **xmovectrl** will be rejected unless the user is permitted access to *xmove's* default display. See **[xmove(1)](/xmove/1.md)** for details about security and authorization.

## OPTIONS

The command options determine the action taken by the accessed  **xmove** pseudoserver:

- **-list**

  This command takes no arguments. In response to this command,  **xmovectrl** prints a list of all clients that are currently under control of the **xmove** pseudoserver. These include both clients started directly under control of the pseudoserver and clients which were moved from other machines. For example:

-

  **vagabond% xmovectrl -list**\
   **1     gnuemacs: Emacs @ sa local**\
   **2     xterm                local**\
   **4     xv info              peabody:0**\
   **5     FM: Waste:V3.3 Alpha suspended**

-

  Each line contains information on a single client. The first column contains a number identifying the particular client. When you wish to move a client, use this number to specify it. If more than one line has the same client identification number,  **xmove** believes the two clients both belong to the same application, and attempting to move one will cause the other to move also. The second column contains a textual identification of the client. **xmove** obtains this information as the title string from the first window created by the client, but that may not always be the main application window. In the example, client number 5's identification should be "File Manager", but the File Manager application creates two windows, the first of which is for a wastecan. The third column specifies the server on which the client is currently being displayed. In this column the word 'local' means that the client is being displayed on **xmove's** default server, and the word 'suspended' means that the client is in suspended animation, ie. the client is not currently being displayed on any server.

- **-moveall** *to\_machine\_name*

  This command takes as its only argument the name of a host machine to which all the  clients at this **xmove** are moved. In general it should only be necessary to specify a machine name as the location, since **xmove** will try to find another  **xmove** at  *to\_machine\_name***:1,** and if it does not find one it will connect directly to the server at *to\_machine\_name***:0.** If you wish to override these defaults you can specify a full display name instead of just a machine name.

  If the machine to which you are moving is multiheaded, you can use the  **'-screen n'** option, where  *n* is the screen number, immediately after the name of the new host, in order to specify a particular screen. For example:

-

  **vagabond% xmovectrl -moveall spruce -screen 1**

  Will move all client to screen 1 on host spruce.

  The time required to move a client should be roughly comparable to the time that the client takes to display when first started. Clients will be unresponsive until the last one has been moved. Then they will all begin the process of refreshing their windows.

  New with *xmove 1.2* is the ability to place a client in suspended animation. This removes it from the display without moving it onto another display. The server can then go down without affecting the client. Later, the client can be unsuspended by moving it to a new display. To suspend a client, move the client and specify *'-suspend'* as the name of the display to which it should be moved.

- **-move** *to\_machine\_name client\_id\_number\_list*

  This command allows you to specify a list of client id numbers for clients which should be moved to the new display. The client numbers should be separated by spaces. For example:

-

  **vagabond% xmovectrl -move suntana 1 7 42**

  Will move clients 1, 7 and 42 to the machine named suntana.

- **-setdefaultserver** *display\_name*

  Changes **xmove's** default server to display\_name. The default server is the display to which **xmove** sends newly arriving applications. It should be set to a full display name, eg. spruce:0. If the specified display is unusable for any reason the error will likely not be detected until the next time a new application or xmovectrl is invoked.

- **-quit**

  Causes the addressed **xmove** and all applications under it's control to exit.

## SEE ALSO

[**xmove**(1)](/xmove/1.md), [**xhost**(1)](/xhost/1.md), [**xauth**(1)](/xauth/1.md), **X11**(7)

## NOTES

**xmovectrl** waits for the requested move to complete before returning. Note that the move cannot be cancelled by killing **xmovectrl** because the move is actually being done by the **xmove** pseudoserver.

Because  **xmove** supports host-level and xauth security, any connection from an  **xmovectrl** will be rejected unless it is run from a machine or by a user who is permitted access to **xmove's** default display.

## AUTHOR

Ethan Solomita, Columbia University

This work was supported by Professor Dan Duchamp of Columbia University and by Dick Sillman and Jim Kempf of Sun Microsystems, Inc.

Bug reports and other problems should be sent to ethan@cs.columbia.edu. Please give all details, including hardware configuration, make of X server and window manager.
