ฉันเจอปัญหานี้หลายครั้งแล้วและฉันต้องการหาวิธีอัตโนมัติ / สคริปต์สิ่งนี้ที่เกี่ยวข้องกับการเปลี่ยนแปลงของข้อมูลประจำตัวหรือสภาพแวดล้อม (ฉันไม่แน่ใจว่าจะเรียกสิ่งนั้นอย่างแม่นยำได้อย่างไร)
su
ตัวอย่างง่ายจะเป็นสคริปต์ที่ส่วนหนึ่งจะต้องมีการดำเนินการกับ ( make install
เช่น) sudo
เพื่อให้บรรลุนี้สามารถใช้ อย่างไรก็ตามมีการเปลี่ยนแปลงสภาพแวดล้อมอื่น ๆ ที่ไม่มีทางออกเช่น อาจเป็นที่รู้จักกันดีคือ python virtualenv ที่ใคร ๆ ก็สามารถจินตนาการถึงสคริปต์ได้อย่างง่ายดาย
source virtEnv/bin/activate
python myScript.py
screen
หรือเพียงแค่สคริปต์ที่จะเรียก ตอนนี้ฉันกำลังรวบรวม gstreamer ซึ่งฉันต้องการจะทำให้เป็นอัตโนมัติในสคริปต์เพราะฉันจะต้องใช้การติดตั้งนี้ในคอมพิวเตอร์เครื่องอื่น ๆ ในภายหลัง
for i in gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-python gnonlin gst-ffmpeg
do
gst-head
cd ./$i
git checkout tags/1.1.1
./autogen.sh
make -j7
exit
done
ที่ไหนgst-head
เป็นgst-uninstalled
สคริปต์ที่โหลด pkg_config ท้องถิ่น (ถ้าผมขวา) และทำให้ฉันในสภาพแวดล้อมที่แยกต่างหาก ถ้าฉันใส่มันลงในสคริปต์สคริปต์จะหยุดการทำงานที่นั่นและดำเนินการต่อเมื่อฉันทำexit
จากสภาพแวดล้อมนั้น
make
ไม่ดำเนินการ? สิ่งที่ไม่ทำงานในสคริปต์ที่คุณโพสต์?