თქვენს სკრიპტში სწორი export https_proxy=... ხაზია. გაუშვებთ მას და შემდეგი ბრძანება კვლავ ძველ proxy-ს ხედავს. შესაძლოა სკრიპტმა თავისივე პროცესში უნაკლოდ იმუშავა.

სკრიპტის გაშვება ცალკე shell-ს იწყებს. მას შეუძლია ცვლადები გადასცეს იმ ბრძანებებს, რომლებსაც იწყებს, მაგრამ გასვლის შემდეგ ვერ შეცვლის მშობელი ტერმინალური shell-ის გარემოს.

./set-proxy.sh
. ./set-proxy.sh

ეს სხვადასხვა ოპერაციაა. მეორე იყენებს shell-ის dot ჩაშენებულ ბრძანებას ფაილის მიმდინარე shell-ში წასაკითხად. Bash ამას source-საც უწოდებს; იხილეთ ჩაშენებული ბრძანებების ცნობარი.

source გაუკეთეთ მხოლოდ იმ ფაილს, რომელსაც ენდობით, რადგან მისი ყველა shell ბრძანება სწორედ ამ მიმდინარე კონტექსტში სრულდება. თუ proxy მხოლოდ სკრიპტის შიგნით არსებულ ბრძანებებს სჭირდება, ჩვეულებრივი გაშვებაა სწორი საზღვარი. ერთი გარე ბრძანებისთვის ბრძანებით შემოფარგლული proxy მინიჭება აირიდებს მიმდინარე shell-ის შეცვლას.

ცვლადების მინიჭებები ლიტერალურად შეინახეთ. Backtick ნიშნავს ბრძანების ჩანაცვლებას და არა ციტირებას. proxy-ს მიმნიჭებელი ხაზი შემთხვევით არ უნდა ცდილობდეს თავისი URL-ის გაშვებას. საჯარო ბოლო წერტილის ასარჩევად განკუთვნილი მნიშვნელობებისთვის უფასო proxy-ების სია გთავაზობთ კანდიდატებს, რომელთა პროტოკოლი კლიენტს უნდა შეესაბამებოდეს. ბოლოს, შეამოწმეთ ცვლადების სახელები, რომლებსაც ნამდვილი ქსელური კლიენტი კითხულობს; shell-ის არეალის გასწორება არ ხდის მხარდაუჭერელ ცვლადს ეფექტიანს.

დაკავშირებული სტატიები