می‌خواهید یک دانلود از پروکسی دیگری استفاده کند و سپس همه چیز به حالت عادی برگردد. نیازی نیست فایل راه‌اندازی shell خود را ویرایش کنید و امیدوار باشید که یادتان می‌ماند آن را برگردانید.

برای یک فرمان خارجی در shell از نوع POSIX، انتساب را پیش از فرمان بگذارید:

https_proxy=http://proxy.example:8080 curl https://example.com/

از نقطه پایانی HTTP که برای همان دانلود در نظر گرفته شده است استفاده کنید؛ فهرست پروکسی HTTP نامزدهایی برای مسیرهای عمومی مجاز ارائه می‌دهد. انتساب به محیط همان فرمان داده می‌شود. فرآیندهای فرزند آن می‌توانند مقدار را به ارث ببرند، اما انتساب پس از پایان فرمان مقدار موجود shell والد را جایگزین نمی‌کند.

کلاینت هنوز تصمیم می‌گیرد چه چیزی را بخواند

نحو shell یک محیط می‌سازد؛ اما مسیر شبکه را تحمیل نمی‌کند. از نام متغیرهایی که برنامه پشتیبانی می‌کند استفاده کنید. متغیرهای عبور موجود، گزینه‌های صریح فرمان یا پیکربندی خود برنامه همچنان می‌توانند بر نتیجه اثر بگذارند.

مستندات محیط Bash رفتار پیشوند فرمان را توضیح می‌دهد. فرمان‌هایی که تابع shell، فرمان‌های درونی ویژه یا نحو shell هستند می‌توانند قواعد دامنه اضافی داشته باشند، بنابراین مثال ساده بالا آگاهانه از یک برنامه خارجی استفاده می‌کند.

برای چند فرمان، از یک زیرپوسته استفاده کنید

(
  export http_proxy=http://proxy.example:8080
  export https_proxy=http://proxy.example:8080
  command-one
  command-two
)

گروه داخل پرانتز با محیط shell خودش اجرا می‌شود. نام‌های نمونه فرمان‌ها را با برنامه‌هایی که می‌خواهید اجرا کنید جایگزین کنید. این الگو از توالی شکننده ذخیره مقدار قدیمی، بازنویسی آن و بازگرداندن دستی پس از هر خطای ممکن پرهیز می‌کند.

رازها را از نمونه‌هایی که در تاریخچه shell کپی می‌شوند دور نگه دارید. همچنین به یاد داشته باشید که sudo می‌تواند محیط را فیلتر کند؛ متغیری که برای فرمان بیرونی قابل مشاهده است به‌طور خودکار از هر مرز دسترسی عبور نمی‌کند. دامنه موقت و انتخاب واقعی پروکسی پرسش‌های جداگانه‌ای می‌مانند.

مقالات مرتبط