ambit man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

ambit(1)			ambit man page			      ambit(1)

NAME
       Ambit - Expand Host Groups OR Expand + Execute Commands

SYNOPSIS
       ambit [AmbitExpandableString]
       ambit hostfile
       ambit /path/to/hostfile
       ambit [UserHostGroup]
       ambit [SystemHostGroup]
       ambit [NetworkHostGroup]
       ambit [ list | create ] hostgroup
       ambit [ edit | remove ] hostgroup [HostGroupName]
       ambit command [AmbitExpandableString]

DESCRIPTION
       Ambit  at  its  simplest	 uses  Bash Brace Expansion to expand and list
       hostnames OR commands. Ambit is first and foremost meant to be  a  gen‐
       eral  purpose  hostlist	enumerator  for	 use  by other applications or
       scripts. Additionally Ambit can be used to manage  hostgroups  specific
       to  a  single  user or accessible to all users on a system or queryable
       from anywhere on the network. Finally, Ambit is able to detect when  it
       is passed a command on the command line, allowing for the command to be
       expanded into separate commands that are then executed in serial.  This
       means  Ambit can expand and run just about anything on the command line
       and usually works in places where Bash Brace Expansion will fail.

       Ambit allows for hosts to be enumerated	from  a	 number	 of  different
       places  including directly on the command line (via an Ambit expandable
       string), a file in the current working directory ($PWD), a  file	 whose
       path  is	 specified,  user  pre-defined	hostgroups, system pre-defined
       hostgroups and network defined hostgroups.

       CLI Argument
	      Ambit will accept an expandable string on the command  line  and
	      expand  that string into either hosts or hostgroups. If any part
	      of a string expands to a hostgroup, Ambit	 will  then  enumerate
	      the  hostgroup  along  with  any other hosts/hostgroups that may
	      also result from expansion.

       File in $PWD
	      If a file happens to be in a user's $PWD and  has	 either	 Ambit
	      expandable strings or hostnames, it can be passed to Ambit as an
	      argument and Ambit will expand it.

       File Path
	      Ambit will accept the full path to a file with Ambit  expandable
	      strings or hostnames that it will enumerate.

       User Hostgroups
	      Ambit  will enumerate Ambit expandable strings or hostnames by a
	      designated name created with 'ambit create hostsgroup' or	 manu‐
	      ally and located in the directory $HOME/.ambit/hosts.

       System Hostgroups
	      Ambit  will enumerate Ambit expandable strings or hostnames by a
	      designated name created as root via 'ambit create hostsgroup' or
	      manually and located in the directory /var/ambit/hosts.

       Network Hostgroups
	      Ambit  will enumerate Ambit expandable strings stored in DNS TXT
	      records at a domain specified in the Domain="" option.

OPTIONS
   HostGroup Controls
       list hostgroups
	      List all User, System and Network Hostgroups. Name and  Descrip‐
	      tion are displayed.

       create hostgroup
	      Create  a new Hostgroup. If executing Ambit with root privileges
	      the Hostgroup will be created as a System	 Hostgroup,  otherwise
	      it will be a User Hostgroup.

       remove hostgroup
	      Remove a User or System Hostgroup.

       edit hostgroup
	      Edit an existing User or System Hostgroup.

   Option Controls
       list options
	      List both System and User Tunable Options.

       edit option
	      Edit or Set a User Option. User options override System Options.

SHORT COMMANDS
       Ambit supports an abbreviated subcommand syntax:

       ambit list hgroups
       ambit show hgroups
       ambit ls hgs

       ambit create hostgroup
       ambit add hgroup
       ambit add hg
       ambit cr hg

       ambit edit hostgroup [HostGroupName]
       ambit ed hg [HostGroupName]

       ambit remove hostgroup [HostGroupName]
       ambit del hgroup [HostGroupName]
       ambit rm hg [HostGroupName]

SPECIAL HOSTGROUP
       There	 is    a    special    System	 HostGroup    called	'down'
       (/var/ambit/hosts/down) that is installed and left  empty  by  default.
       This  group  is	meant  to  provide a dynamic, near realtime listing of
       hosts that have been determined to be unreachable from the  local  host
       for  one	 reason or another. Reasons can range from, a host or hosts in
       'down' have failed specific monitoring check or failed the  last	 peri‐
       odic  ping check or someone with root privileges has decided that it is
       down. If a host happens to be currently listed in the System  HostGroup
       'down'	 AND	a    user    has   a   User   HostGroup	  named	  down
       ($HOME/.ambit/hosts/down) Ambit will omit the host from all results for
       that  user. In other words, users can choose whether they want to honor
       the current list of unreachable hosts according the local host.	To  do
       so  they simple have to create the HostGroup down with no hosts listed.
       The existence of this group tells Ambit to honor the  System  HostGroup
       'down'.

   'down'
       $ sudo ambit create hostgroup
       HostGroup Name : down
       HostGroup Summary : System Wide Unreachable Hosts
       Enter Hostnames Below [Ctrl-d to End]:
       test1.mydomain.org

       $ ambit list hostgroups | grep down
       down:	   System Wide Unreachable Hosts

       $ ambit down
       test1.mydomain.org

       $ ambit create hostgroup
       HostGroup Name : mydomain
       HostGroup Summary : Production mydomain.org Servers
       Enter Hostnames Below [Ctrl-d to End]:
       test[1..12].mydomain.org

       $ ambit mydomain
       test1.mydomain.org
       test10.mydomain.org
       test11.mydomain.org
       test12.mydomain.org
       test2.mydomain.org
       test3.mydomain.org
       test4.mydomain.org
       test5.mydomain.org
       test6.mydomain.org
       test7.mydomain.org
       test8.mydomain.org
       test9.mydomain.org

       $ ambit create hostgroup
       HostGroup Name : down
       HostGroup Summary : Honoring System HostGroup 'down'
       Enter Hostnames Below [Ctrl-d to End]:

       $ ambit list hostgroups

       System HostGroups
       ------------------
       down:   System Wide Unreachable Hosts

       User HostGroups
       ----------------
       mydomain:   Production mydomain.org Servers
       down:	   Honoring System HostGroup 'down'

       $ ambit mydomain
       test10.mydomain.org
       test11.mydomain.org
       test12.mydomain.org
       test2.mydomain.org
       test3.mydomain.org
       test4.mydomain.org
       test5.mydomain.org
       test6.mydomain.org
       test7.mydomain.org
       test8.mydomain.org
       test9.mydomain.org

       $ sudo ambit edit hostgroup down

       #
       # Summary - System Wide Unreachable Hosts
       #
       test1.mydomain.org
       test10.mydomain.org
       test11.mydomain.org
       test12.mydomain.org

       $ ambit mydomain
       test2.mydomain.org
       test3.mydomain.org
       test4.mydomain.org
       test5.mydomain.org
       test6.mydomain.org
       test7.mydomain.org
       test8.mydomain.org
       test9.mydomain.org

EXAMPLES
       Listing All Enumerable HostGroups

       $ ambit list hostgroups

       Network Host Groups
       -------------------
       svn:	descriptive text "web[1..3].mydomain.org"
       yum:	descriptive text "web[4..6].mydomain.org"
       web:	descriptive text "web[7..50].mydomain.org"

       System Host Groups
       ------------------
       down:	   System Wide Down Hosts
       admin:	   All Admin Hosts

       User Host Groups
       ----------------
       aff:	 Test Group For Expansion
       latest:	 The Latest Hotness in Hosts
       stuff:	 Stuff and Thing

       Listing Configurable Options

       $ ambit list options

       System Options
       --------------
       WeLogin="yes"
       YouMask="0077"
       Random="$RANDOM"
       AllFiles="/var/$MyNameIs"
       UsrFiles="$HOME/.$MyNameIs"
       AllConf="/etc/$MyNameIs/$MyNameIs.conf"
       UsrConf="$HOME/.$MyNameIs.conf"
       Domain=""

       User Options
       ------------
       Domain="mydomain.org"

       Creating, Listing and Expanding a HostGroup

       $ ambit create hostgroup
       Host Group Name: manpage
       Host Group Description: Sweet HostGroup For Ambit's ManPage
       Enter Hostnames Below [Ctrl-d to End]:
       manpage[1..5].mydomain.org
       manpage7.mydomain.org
       manpage10.mydomain.org

       $ ambit list hostgroups | grep manpage
       manpage:	  Sweet HostGroup For Ambit's ManPage

       $ ambit manpage
       manpage10.mydomain.org
       manpage1.mydomain.org
       manpage2.mydomain.org
       manpage3.mydomain.org
       manpage4.mydomain.org
       manpage5.mydomain.org
       manpage7.mydomain.org

       Mixing HostGroups and Expandable Strings

       $ ambit [manpage,aff,ns[1..4].google.com]
       1.a.ff
       2.a.ff
       3.a.ff
       manpage10.mydomain.org
       manpage1.mydomain.org
       manpage2.mydomain.org
       manpage3.mydomain.org
       manpage4.mydomain.org
       manpage5.mydomain.org
       manpage7.mydomain.org
       ns1.google.com
       ns2.google.com
       ns3.google.com
       ns4.google.com

       Expanding Commands

       $ ambit host -t ns [google,facebook,twitter].com
       facebook.com name server ns1.facebook.com.
       facebook.com name server ns2.facebook.com.
       facebook.com name server ns3.facebook.com.
       facebook.com name server ns4.facebook.com.
       facebook.com name server ns5.facebook.com.
       google.com name server ns1.google.com.
       google.com name server ns2.google.com.
       google.com name server ns3.google.com.
       google.com name server ns4.google.com.
       twitter.com name server ns1.p34.dynect.net.
       twitter.com name server ns2.p34.dynect.net.
       twitter.com name server ns3.p34.dynect.net.
       twitter.com name server ns4.p34.dynect.net.

       $ ambit sudo /sbin/service [httpd,postfix,named] restart
       Stopping httpd:						  [  OK	 ]
       Starting httpd:						  [  OK	 ]
       Shutting down postfix:					  [  OK	 ]
       Starting postfix:					  [  OK	 ]
       Stopping named:						  [  OK	 ]
       Starting named:						  [  OK	 ]

       $ ambit lastlog -u [$(grep Wheel /etc/group |sed -e 's/W.*//g')]
       Username		Port	 From		  Latest
       bill		ttyp3	 cpe-76-87-95-166 Thu Jul 29 08:48:33 -0700 2010
       doug		ttyp0	 99-64-251-98.lig Fri Oct 22 14:47:48 -0700 2010
       felipe		ttyp0	 pool-108-41-38-2 Sun Mar 20 16:52:36 -0700 2011
       james					  **Never logged in**
       john					  **Never logged in**
       kurtis					  **Never logged in**
       mm		pts/3	 cpe-76-171-101-9 Sat Jul  9 02:31:50 -0700 2011
       sara					  **Never logged in**
       shaun					  **Never logged in**
       shomari					  **Never logged in**
       victor					  **Never logged in**
       zack					  **Never logged in**

       ^^ Listing for the last time the members of the Wheel group logged in (if ever).

BUGS
       Fleas, Adam Had 'em.

AUTHOR
       Mike Marschall (mm@a.tt)

2.0				  08 Jul 2011			      ambit(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net