Score:0

bash: set command: เปิดใช้งานตัวเลือกโดยเขียนทับตัวเลือกก่อนหน้า

ธง it

อ้างว่าผลลัพธ์ของ $- นี่คือ:

เขา

ถ้าฉันเพิ่มตัวเลือกด้วย ชุด สั่งการ:

ชุด -B

ผลลัพธ์ของ $- กลายเป็นสิ่งนี้:

เขาBs

แต่ฉันต้องการให้มันกลายเป็น:

ไอบีเอส

เพื่อให้เขียนทับตัวเลือกก่อนหน้า

Score:1
ธง tm

คุณสามารถสร้างฟังก์ชันต่อไปนี้เพื่อทำสิ่งที่คุณต้องการ:

มายเซ็ต () {
    ตัวเลือก=$-
    options=${options//[is]} # ลบ "i" และ "s"
    ตั้งค่า +"ตัวเลือก $"
    ชุด -"$1"
}

และโทร

มายเซ็ต บี
it flag
ใช่ ตกลง หลังจากที่ฉันคิดดูแล้ว แต่ความจริงก็คือ นอกจากตัวเลือก `i` และ `s` แล้ว ยังมีตัวเลือกอื่น ๆ ที่ไม่ต้องลบออก (เพราะจะทำให้เกิดข้อผิดพลาด) ตัวอย่างเช่น ตัวเลือกหนึ่งคือตัวเลือก ` ค`
it flag
ตัวเลือกที่ดีที่สุดคือการบอกคำสั่ง `set` ให้ละเว้นตัวเลือกที่ไม่มีอยู่ ในขณะที่ทำงานกับตัวเลือกอื่นๆ ต่อไป มีสวิตช์สำหรับทำเช่นนี้หรือไม่?
tm flag
ไม่ ไม่มีตัวเลือกดังกล่าว

โพสต์คำตอบ

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