.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" and Copyright (C) 2004, 2007 Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sat Jul 24 18:20:58 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified Fri Feb 14 21:47:50 1997 by Andries Brouwer (aeb@cwi.nl) .\" Modified 9 Jun 2004, Michael Kerrisk .\" Changed unsetenv() prototype; added EINVAL error .\" Noted nonstandard behavior of setenv() if name contains '=' .\" 2005-08-12, mtk, glibc 2.3.4 fixed the "name contains '='" bug .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH setenv 3 "5 февраля 2023 г." "Linux man\-pages 6.03" .SH ИМЯ setenv \- изменяет или добавляет переменную окружения .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .PP \fBint setenv(const char *\fP\fIname\fP\fB, const char *\fP\fIvalue\fP\fB, int \fP\fIoverwrite\fP\fB);\fP \fBint unsetenv(const char *\fP\fIname\fP\fB);\fP .fi .PP .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .PP \fBsetenv\fP(), \fBunsetenv\fP(): .nf _POSIX_C_SOURCE >= 200112L || /* glibc <= 2.19: */ _BSD_SOURCE .fi .SH ОПИСАНИЕ Функция \fBsetenv\fP() добавляет переменную \fIname\fP в окружение со значением \fIvalue\fP, если \fIname\fP ещё не существует. Если \fIname\fP в окружении существует, то её значение изменяется на \fIvalue\fP, если \fIoverwrite\fP имеет ненулевое значение; если \fIoverwrite\fP равно нулю, то значение \fIname\fP не изменяется (и \fBsetenv\fP() завершается без ошибки). Эта функция делает копию строк, указанных в \fIname\fP и \fIvalue\fP (в отличии от \fBputenv\fP(3)). .PP Функция \fBunsetenv\fP() удаляет переменную \fIname\fP из окружения. Если \fIname\fP в окружении не существует, то функция завершается без ошибки и окружение не изменяется. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" \fBsetenv\fP() and \fBunsetenv\fP() functions return zero on success, or \-1 on error, with \fIerrno\fP set to indicate the error. .SH ОШИБКИ .TP \fBEINVAL\fP \fIname\fP is NULL, points to a string of length 0, or contains an \[aq]=\[aq] character. .TP \fBENOMEM\fP Недостаточно памяти для добавления новой переменной в окружение. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .ad l .nh .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ \fBsetenv\fP(), \fBunsetenv\fP() T} Безвредность в нитях MT\-Unsafe const:env .TE .hy .ad .sp 1 .SH СТАНДАРТЫ POSIX.1\-2001, POSIX.1\-2008, 4.3BSD. .SH ЗАМЕЧАНИЯ В POSIX.1 не требуется, чтобы \fBsetenv\fP() или \fBunsetenv\fP() были реентерабельными. .PP До glibc 2.2.2, \fBunsetenv\fP() объявлялась как возвращающая \fIvoid\fP; более новые версии glibc следуют объявлению из POSIX.1, показанному в ОБЗОРЕ. .SH ДЕФЕКТЫ POSIX.1 specifies that if \fIname\fP contains an \[aq]=\[aq] character, then \fBsetenv\fP() should fail with the error \fBEINVAL\fP; however, versions of glibc before glibc 2.3.4 allowed an \[aq]=\[aq] sign in \fIname\fP. .SH "СМ. ТАКЖЕ" \fBclearenv\fP(3), \fBgetenv\fP(3), \fBputenv\fP(3), \fBenviron\fP(7) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Alexander Golubev , Azamat Hackimov , Hotellook, Nikita , Spiros Georgaras , Vladislav , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .