.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993, David Metcalfe .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH putenv 3 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم putenv \- تغيير أو إضافة متغير بيئة .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP .P .\" Not: const char * \fBint putenv(char *\fP\fIstring\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .P \fBputenv\fP(): .nf _XOPEN_SOURCE || /* glibc >= 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _SVID_SOURCE .fi .SH الوصف الدالة \fBputenv\fP() تضيف أو تغير قيمة متغيرات البيئة. المعامل \fIstring\fP يكون بالصيغة \fIname\fP=\fIvalue\fP. إذا لم يكن \fIname\fP موجودًا بالفعل في البيئة، فتُضاف \fIstring\fP إلى البيئة. إذا كان \fIname\fP موجودًا، فتُغير قيمة \fIname\fP في البيئة إلى \fIvalue\fP. سلسلة المحارف المشار إليها بواسطة \fIstring\fP تصبح جزءًا من البيئة، لذا تغيير السلسلة يغير البيئة. .SH "قيمة الإرجاع" الدالة \fBputenv\fP() تُرجع صفرًا عند النجاح. عند الفشل، تُرجع قيمة غير صفرية، ويُضبط \fIerrno\fP للإشارة إلى الخطأ. .SH الأخطاء .TP \fBENOMEM\fP مساحة غير كافية لتخصيص بيئة جديدة. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBputenv\fP() T} سلامة الخيوط MT\-Unsafe const:env .TE .SH المعايير POSIX.1\-2008. .SH التاريخ POSIX.1\-2001, SVr2, 4.3BSD\-Reno. .P .\" .P .\" Description for libc4, libc5, glibc: .\" If the argument .\" .I string .\" is of the form .\" .IR name , .\" and does not contain an \[aq]=\[aq] character, then the variable .\" .I name .\" is removed from the environment. .\" If .\" .BR putenv () .\" has to allocate a new array .\" .IR environ , .\" and the previous array was also allocated by .\" .BR putenv (), .\" then it will be freed. .\" In no case will the old storage associated .\" to the environment variable itself be freed. الدالة \fBputenv\fP() ليست مطلوبة أن تكون قابلة لإعادة الدخول، والإصدار في glibc 2.0 ليس كذلك، لكن إصدار glibc 2.1 هو كذلك. .P منذ glibc 2.1.2، يتوافق تطبيق glibc مع SUSv2: يُستخدم المؤشر \fIstring\fP المُعطى لـ \fBputenv\fP(). على وجه الخصوص، تصبح هذه السلسلة جزءًا من البيئة؛ تغييرها لاحقًا سيغير البيئة. (وبالتالي، من الخطأ استدعاء \fBputenv\fP() بمتغير تلقائي كمعامل، ثم العودة من الدالة المستدعية بينما \fIstring\fP لا يزال جزءًا من البيئة.) ومع ذلك، من glibc 2.0 إلى glibc 2.1.1، يختلف الأمر: تُستخدم نسخة من السلسلة. من ناحية، يسبب هذا تسربًا للذاكرة، ومن ناحية أخرى، ينتهك SUSv2. .P إصدار 4.3BSD\-Reno، مثل glibc 2.0، يستخدم نسخة؛ هذا أُصلح في جميع أنظمة BSD الحديثة. .P SUSv2 يزيل \fIconst\fP من النموذج الأولي، وكذلك يفعل glibc 2.1.3. .P تطبيق مكتبة GNU C يوفر امتدادًا غير قياسي. إذا لم تتضمن \fIstring\fP علامة يساوي: .P .in +4n .EX putenv("NAME"); .EE .in .P فإن المتغير المُسمى يُزال من بيئة المستدعي. .SH "انظر أيضًا" \fBclearenv\fP(3), \fBgetenv\fP(3), \fBsetenv\fP(3), \fBunsetenv\fP(3), \fBenviron\fP(7) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .