xref: /dragonfly/bin/varsym/varsym.1 (revision cfd1aba3)
1.\" Copyright (c) 2003 Matthew Dillon <dillon@backplane.com>
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $DragonFly: src/bin/varsym/varsym.1,v 1.10 2008/02/22 05:19:25 swildner Exp $
26.\"
27.Dd September 27, 2009
28.Dt VARSYM 1
29.Os
30.Sh NAME
31.Nm varsym
32.Nd get and set user and system-wide variables for variant symlinks
33.Sh SYNOPSIS
34.Nm
35.Op Fl adpqsux
36.Oo
37.Ar var Ns Op Ns Cm = Ns Ar data
38.Ar ...
39.Oc
40.Nm
41.Fl x
42.Oo
43.Ar var Ns Op Ns Cm = Ns Ar data
44.Ar ...
45.Oc
46.Ar command
47.Ar args
48.Sh DESCRIPTION
49The
50.Nm
51program manages user and system-wide variables.
52These variables are typically
53used by the system to resolve variant symlinks but may also be used generally.
54.Pp
55For each operand set, modify, retrieve, or delete the specified variable.
56By default variables specified without data are retrieved and variables
57specified with data are set.
58Variables may be set to empty.
59.Bl -tag -width Ar
60.It Fl a
61List all variables at the specified level.
62Note that per-process variables
63override per-user variables and per-user variables override system-wide
64variables.
65By default, per-user variables are listed.
66.It Fl d
67Delete mode.
68The specified variables are deleted.
69Any specified data is ignored.
70.It Fl p
71This option causes variables to be set on a per-process basis and restricts
72retrievals to process-specific variables.
73Note that since
74.Nm
75is run as its own process, using this option to set a variable will not
76affect your shell's namespace.
77Instead you might want to use the
78.Fl x
79option to set local varsyms and exec a command.
80.It Fl q
81Quiet mode.
82When retrieving a variable only its data is printed.
83.It Fl s
84This option causes variables to be set system-wide and restricts retrievals
85to system-specific variables.
86.It Fl u
87This option causes variables to be set on a per-user-id basis and restricts
88retrievals to user-specific variables.
89This is the default unless
90.Fl x
91is used.
92.It Fl x
93This option causes variables to be set only within the
94.Nm
95process and its children, and also allows you to specify a command and
96arguments to exec after the var=data specifications.
97.El
98.Sh EXIT STATUS
99The
100.Nm
101utility exits with one of the following values:
102.Bl -tag -width Ds
103.It 0
104No errors occurred.
105.It 1
106A requested variable could not be found
107.It 2
108A requested variable could not be set
109.El
110.Sh SEE ALSO
111.Xr ln 1 ,
112.Xr varsym 2 ,
113.Xr varsym.conf 5
114