sh: 0: ตัวเลือกที่ผิดกฎหมาย -


10

เมื่อฉันพยายามเรียกใช้คำสั่งด้านล่างใน Ubuntu:

sudo -n -u contd sh --login -c ". /home/contd/iib-10.0.0.5/server/bin/mqsiprofile;/home/contd/iib-10.0.0.5/common/jdk/jre/bin/java -cp $CLASSPATH:$MQSI_JREPATH//usr/share/ant/lib/ant-antlr.jar:/usr/share/ant/lib/ant-apache-bcel.jar:/usr/share/ant/lib/ant-apache-bsf.jar:/usr/share/ant/lib/ant-apache-log4j.jar:/usr/share/ant/lib/ant-apache-oro.jar:/usr/share/ant/lib/ant-apache-regexp.jar:/usr/share/ant/lib/ant-apache-resolver.jar:/usr/share/ant/lib/ant-apache-xalan2.jar:/usr/share/ant/lib/ant-commons-logging.jar:/usr/share/ant/lib/ant-commons-net.jar:/usr/share/ant/lib/ant-javamail.jar:/usr/share/ant/lib/ant-jdepend.jar:/usr/share/ant/lib/ant-jmf.jar:/usr/share/ant/lib/ant-jsch.jar:/usr/share/ant/lib/ant-junit.jar:/usr/share/ant/lib/ant-junit4.jar:/usr/share/ant/lib/ant-launcher.jar:/usr/share/ant/lib/ant-swing.jar:/usr/share/ant/lib/ant-testutil.jar:/usr/share/ant/lib/ant.jar:/usr/share/ant/lib/jsch.jar:/usr/share/ant/lib/junit.jar -Djava.ext.dirs=/home/contd/iib-10.0.0.5/common/jdk/lib:/home/contd/iib-10.0.0.5/common/jdk/jre/lib/ext -Dant.home=/usr/share/ant org.apache.tools.ant.Main -f /home/contd/AntScript/build_main.xml"

ฉันได้รับข้อผิดพลาดนี้:

sh: 0: Illegal option --

คำสั่งดังกล่าวควรได้รับการสนับสนุนใน Linux แต่เมื่อฉันพยายามใช้โซลูชันเดียวกัน (Ant scripting) ใน Ubuntu ฉันประสบปัญหานี้


5
ฉันไม่คิดว่าdashเชลล์รองรับ--loginตัวเลือกแบบยาว: ดูDashAsBinSh
steeldriver

3
การแก้ไขอย่างรวดเร็วจะเปลี่ยนมีเพียง--login -l
เซท

คำตอบ:


17

shบน ubuntu เป็น symlink ไปที่เปลือกประไม่ทุบตี Dash ไม่รองรับ longform --loginแต่รองรับรูปแบบชวเลข-l(จากman dash):

-l ทำให้เส้นประทำราวกับว่ามันถูกเรียกใช้เป็นเปลือกเข้าสู่ระบบ

การแทนที่--loginด้วย-lคำสั่งควรแก้ไขปัญหาของคุณ

sudo -n -u contd sh -l -c ". <etc>

ถ้าคุณต้องการที่จะก่อให้เกิดการทุบตีแทนที่จะรีบเพียงโทรแทน bashsh

sudo -n -u contd bash --login -c ". <etc>
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.