กลับไปหน้าบทความ

อ่าน 2 นาที

สิ่งแวดล้อม

env เป็น คำสั่ง เชลล์ ที่ใช้รายงาน ค่าตัวแปรสภาพแวดล้อม หรือรันคำสั่งใน กระบวนการย่อย โดยใช้ค่าตัวแปรสภาพแวดล้อมที่แก้ไขแล้ว คำสั่งนี้มีให้ใช้งานในระบบ ที่คล้ายยูนิกส์

สิ่งแวดล้อม

สิ่งแวดล้อม
ระบบปฏิบัติการยูนิก , คล้ายยูนิก , อินเฟอร์โน
แพลตฟอร์มข้ามแพลตฟอร์ม
พิมพ์สั่งการ
ใบอนุญาตcoreutils : GPLv3+

envเป็นคำสั่งเชลล์ ที่ใช้รายงานค่าตัวแปรสภาพแวดล้อมหรือรันคำสั่งในกระบวนการย่อยโดยใช้ค่าตัวแปรสภาพแวดล้อมที่แก้ไขแล้ว คำสั่งนี้มีให้ใช้งานในระบบ ที่คล้ายยูนิกส์

โดยค่าเริ่มต้น กระบวนการย่อยจะสืบทอดตัวแปรสภาพแวดล้อมจากกระบวนการแม่envรองรับการเพิ่ม แก้ไข และลบตัวแปรที่คัดลอกมาenvยังสามารถใช้เพื่อเรียกใช้ตัวแปลภาษา ที่ถูกต้องได้อีกด้วย ในการใช้งานนี้ โดยทั่วไปแล้วสภาพแวดล้อมจะไม่เปลี่ยนแปลง คำสั่งนี้จะไม่แก้ไขตัวแปรสภาพแวดล้อมในกระบวนการที่มันทำงานอยู่ กลไกในการทำเช่นนั้น ได้แก่exportคำสั่ง และการกำหนดชื่อให้กับค่าNAME=valueเช่น

เวอร์ชันGNU coreutilsเขียนโดย Richard Mlynarik, David MacKenzie และ Assaf Gordon [ 1 ]ปรากฏครั้งแรกใน4.4BSDและเป็นส่วนหนึ่งของ POSIX.1 (เฉพาะตัว เลือก -iเท่านั้น) [ 2 ]เวอร์ชันนี้ได้รับการขยายเพื่อจัดการสัญญาณและไดเร็กทอรีปัจจุบัน[ 1 ]

เวอร์ชันของFreeBSD รองรับเส้นทางการค้นหาแบบกำหนดเอง ส่วนขยายที่พบในทั้งสองเวอร์ชัน ได้แก่ -uสำหรับการยกเลิกการตั้งค่าตัวแปร และ-Sสำหรับการแยกอาร์กิวเมนต์ (ส่วนใหญ่ใน shebang) [ 2 ]

ตัวอย่าง

คำสั่งต่อไปนี้จะแสดงตัวแปรสภาพแวดล้อมปัจจุบันออกทางเอาต์พุตมาตรฐาน :

$ env 

คำสั่งต่อไปนี้จะสร้างเชลล์ใหม่โดยไม่มีตัวแปรสภาพแวดล้อมใดๆ:

$ env -i /bin/sh 

คำสั่งบรรทัดต่อไปนี้จะเรียกใช้แอปพลิเคชันxcalcโดยกำหนดค่าตัวแปร DISPLAY เป็น "foo.bar:1.0" เพื่อให้แสดงผลบนจอแสดงผลที่ระบุ:

$ env DISPLAY = foo.bar:1.0 xcalc 

การใช้ env ในลักษณะนี้มักไม่จำเป็น เนื่องจากเชลล์ส่วนใหญ่รองรับการตั้งค่าตัวแปรสภาพแวดล้อมไว้หน้าคำสั่งได้ เช่น:

$ DISPLAY = foo.bar:1.0 xcalc 

นอกจากนี้ ยังสามารถใช้ env ใน บรรทัด hashbangของสคริปต์เพื่ออนุญาตให้ค้นหาตัวแปลภาษา ผ่านทาง PATH ได้ ตัวอย่างเช่น นี่คือโค้ดของสคริปต์ Python :

#!/usr/bin/env python3 print ( "Hello, World!" )

ในตัวอย่างนี้/usr/bin/envคือเส้นทาง แบบเต็ม ของenvคำสั่ง สภาพแวดล้อมไม่ได้ถูกเปลี่ยนแปลง

โปรดทราบว่าสามารถระบุตัวแปลภาษาได้โดยไม่ต้องใช้envโดยการระบุเส้นทางแบบเต็มของpythonตัวแปลภาษา ปัญหาของวิธีนี้คือ เส้นทางที่แน่นอนอาจแตกต่างกันไปในแต่ละระบบคอมพิวเตอร์ การใช้ ดังenvเช่นในตัวอย่าง จะค้นหาและระบุตำแหน่งของตัวแปลภาษาเมื่อสคริปต์ทำงาน (กล่าวคือenvจะเรียกใช้ระบบไปยังexecvpซึ่งจะทำหน้าที่ค้นหาและเรียกใช้ตัวแปลภาษา) วิธีนี้ทำให้สคริปต์ใช้งานได้ ง่ายขึ้น แต่ก็เพิ่มความเสี่ยงที่จะเลือกตัวแปลภาษาผิด เพราะมันจะค้นหาการจับคู่ในทุกไดเร็กทอรีบนเส้นทางการค้นหาไฟล์ปฏิบัติการ นอกจากนี้ยังประสบปัญหาเดียวกันคือ เส้นทางไปยังไฟล์envไบนารีอาจแตกต่างกันไปในแต่ละเครื่อง

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Env&oldid=1343938701 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ สิ่งแวดล้อม

env เป็น คำสั่ง เชลล์ ที่ใช้รายงาน ค่าตัวแปรสภาพแวดล้อม หรือรันคำสั่งใน กระบวนการย่อย โดยใช้ค่าตัวแปรสภาพแวดล้อมที่แก้ไขแล้ว คำสั่งนี้มีให้ใช้งานในระบบ ที่คล้ายยูนิกส์

ตัวอย่าง

คำสั่งต่อไปนี้จะแสดงตัวแปรสภาพแวดล้อมปัจจุบันออกทาง เอาต์พุตมาตรฐาน :

ลิงก์ภายนอก

คู่มือ Wikibook เกี่ยวกับ Unix มีหน้าหนึ่งที่กล่าวถึงหัวข้อ: คำสั่ง env : ตั้งค่าสภาพแวดล้อมสำหรับการเรียกใช้คำสั่ง – เอกสารอ้างอิงเชลล์และยูทิลิตี้ ข้อกำหนดยูนิกซ์ฉบับเดียว เวอร์ชัน 5 จาก The Open Group env(1) – คู่มือ คำสั่งทั่วไปของ เกม Inferno env...