API એન્ડપોઇન્ટ એક્સપોર્ટ કરતો VPN હૂક જે પ્રક્રિયાઓ શરૂ કરે છે તેમનું પર્યાવરણ બદલે છે, ટનલ ઉપર આવ્યા ત્યારે પહેલેથી ખુલ્લું હતું તે ટર્મિનલનું નહીં. એ જ એક ભેદ «સાધન હજી પણ જાહેર એન્ડપોઇન્ટને બોલાવે છે» એવા મોટા ભાગના અહેવાલો સમજાવે છે. સેટિંગ મૂકવા માટે બે કામ કરી શકે એવી જગ્યાઓ છે, અને પસંદગી એના પર આધાર રાખે છે કે તેને કોણ વાપરે છે અને તે કેટલી વાર બદલાય છે. બીજી સ્ટાર્ટઅપ સ્ક્રિપ્ટ ઉમેરતા પહેલાં બંનેની તુલના કરો.

સેટિંગ રહી શકે એવી બે જગ્યાઓ

પહેલો વિકલ્પ આદેશ પર જ પ્રીફિક્સ છે: મૂલ્ય ફક્ત તે એક કૉલ માટે હોય છે અને તેની સાથે જ અદૃશ્ય થાય છે. બીજો વિકલ્પ કનેક્શન હૂકની અંદર એક્સપોર્ટ છે, જે તે બિંદુ પછી હૂક જે પણ પ્રક્રિયા શરૂ કરે તે દરેક સુધી પહોંચે છે. તે સિન્ટેક્સમાં નહીં, પહોંચ અને આયુષ્યમાં અલગ પડે છે, અને એ જ ભેદ મોટા ભાગની નિષ્ફળતાઓ નક્કી કરે છે.

PropertyPrefix on the commandExport from the hook
Who receives itThat invocation onlyChildren the hook starts
LifetimeUntil the process exitsUntil the hook's own session ends
LeakageScoped to one commandApplies to later commands in that session
Repeat costEvery invocationOnce per connection
Works for an open editorNo, unless the editor is started with itNo

કોષ્ટક હૂકને સસ્તું દેખાડે છે અને સાચું બિલ છુપાવે છે: તે એવા આદેશો માટે પણ ખાનગી એન્ડપોઇન્ટ પસંદ કરે છે જેમનો કાર્ય સાથે કોઈ સંબંધ નથી. દરેક હરોળને પસંદગી નહીં, મર્યાદા તરીકે વાંચો. જો એન્ડપોઇન્ટ દરેક કાર્યમાં બદલાય, તો એક કી-સ્ટ્રોકનો ખર્ચ થાય તોપણ પ્રીફિક્સ ચોકસાઈમાં જીતે છે.

હૂક પહેલેથી ખુલ્લી શેલ સુધી કેમ પહોંચી શકતો નથી

પ્રક્રિયાની ઇમેજ બનતી વખતે પર્યાવરણ ચલો પ્રક્રિયાને આપવામાં આવે છે. કનેક્શન પહેલાં શરૂ થયેલી શેલને મળેલી નકલ રાખે છે, અને હૂકની અંદર ચલાવાયેલ એક્સપોર્ટ મશીનની દરેક પ્રક્રિયા સુધીનું પ્રસારણ નથી. ફક્ત હૂકના પોતાના ચાઇલ્ડ તેને વારસામાં મેળવે છે. શેલના પોતાના ચાઇલ્ડ જે તેમના શરૂ થવાની ક્ષણે શેલ પાસે હોય તે લે છે, અને એટલે જ એક જ આદેશ એક ટર્મિનલમાં કામ કરી શકે છે અને બીજામાં નિષ્ફળ જાય છે.

એ જ વાત ગ્રાફિકલ એડિટરને લાગુ પડે છે. તેનો એક્સ્ટેન્શન હોસ્ટ, અંતર્નિર્મિત ટર્મિનલ અને પૃષ્ઠભૂમિનો ભાષા સર્વર લોન્ચ વખતે અલગ થયા અને પોતાની નકલો રાખે છે. ફોલ્ડર ફરી ખોલવાથી તે ચાઇલ્ડ ફરીથી શરૂ થવાની જરૂર નથી, એટલે તમે ઉમેરેલી સેટિંગ હજી પણ કદી પહોંચતી નથી.

સૌથી સસ્તી કસોટી એ છે કે ચલને જ્યાં નિષ્ફળતા આવે ત્યાંથી છાપો, જે શેલ કામ કરે છે ત્યાંથી નહીં. જો નિષ્ફળ પ્રક્રિયા ટનલ પહેલાં શરૂ થઈ હોય, તો એક્સપોર્ટને કોઈ તક નહોતી મળી.

દરેક આદેશ માટેનું સ્વરૂપ, લખેલું

પ્રીફિક્સ પસંદગીને તે વાપરતા આદેશમાં દૃશ્યમાન રાખે છે, જે ત્યારે મદદ કરે છે જ્યારે એન્ડપોઇન્ટ કાર્યો વચ્ચે બદલાય છે:

env INTERNAL_API='https://internal-api.example.net:8443' my-work-tool

આદેશ ફક્ત ઉદાહરણ છે: my-work-tool પ્લેસહોલ્ડર છે અને INTERNAL_API VPN ધોરણ નથી, તેથી તમે ખરેખર ચલાવો છો તે પ્રોગ્રામની દસ્તાવેજી સેટિંગ અને તમારો મંજૂર હોસ્ટ મૂકો. એક જ લાઇનમાં ટોકન કે પાસવર્ડ ન મૂકો, કારણ કે તે શેલના ઇતિહાસમાં જાય છે.

જ્યારે ઘણા આદેશો એક જ કાર્યના હોય, ત્યારે ટૂંકી સમીક્ષિત રેપર સ્ક્રિપ્ટ ચલો સેટ કરે છે અને પછી તેમને શરૂ કરે છે. તે એક જ વ્યાખ્યા રાખે છે, મૂલ્યને ટર્મિનલના દરેક ભાવિ આદેશ માટે વૈશ્વિક બનાવ્યા વિના.

ફરી લોડ કરો, ફરી શરૂ કરો અથવા એમ જ રહેવા દો

પહેલેથી ચાલતા સાધન માટે, તેનું પોતાનું ફરી લોડ કરવું કે વર્કસ્પેસ પ્રોફાઇલ હોય તો તેને પસંદ કરો. નહીં તો કામ સાચવો અને સેટિંગ વાંચતો ઘટક ફરી શરૂ કરો, જે ઘણી વાર ભાષા સર્વર હોય છે, એડિટર વિન્ડો નહીં. વિન્ડો ફરી શરૂ કરીને ચાઇલ્ડ પ્રક્રિયાઓ તેની પાછળ આવી ગઈ હોવાનું માનવું એ જ છે કે જેના કારણે ફરી લોડ કરવું કામ ન કરતું લાગે છે.

ડિસ્કનેક્શન એ અલગ નિર્ણય છે. થોભાવવું, બંધ કરવું કે ફરી જોડાવું એ એપ્લિકેશનનું કામ છે, અને એન્ડપોઇન્ટ ચલ તેને નિયંત્રિત કરતું નથી. ચલને સરનામું પસંદ કરતી ગોઠવણી તરીકે લો, પછી કયો નેટવર્ક ટ્રાફિક વાપરી શકાય તે અંગેના નિયમ તરીકે નહીં, અને બંને બાબતો અલગ રહે છે.

સંબંધિત લેખો