chain fish สั่งผ่าน `&&` หรือ` || '


94

ในทุบตี / ZSH และเปลือกหอยอื่น ๆ ผมใช้ในการใช้และ&&||

มีอะไรเทียบเท่าในปลาบ้าง?


ขณะนี้ไวยากรณ์นี้ได้รับการสนับสนุนในสาขาหลักและจะเปิดตัวใน Fish 3.0 ( github.com/fish-shell/fish-shell/commit/… )
Warlike Chimpanzee

คำตอบ:


13

ตัวดำเนินการเชิงตรรกะที่คุณคุ้นเคยเคยได้รับการสนับสนุนตั้งแต่ฟิช 3.0.0 ออกมาเมื่อวันที่ 2018-12-28

จากบันทึกประจำรุ่น v3 :

  • ตอนนี้ fish สนับสนุน&&(like and), ||(like or) และ!(like not) เพื่อการโยกย้ายที่ดีขึ้นจาก POSIX ที่สอดคล้องกับเชลล์ ( # 4620 )

132

ปลาไม่มีไวยากรณ์พิเศษสำหรับตรรกะ AND ( &&) หรือตรรกะ OR ( ||)

แต่คุณสามารถใช้คำสั่งandและorตรวจสอบสถานะการออกของคำสั่งก่อนหน้าและทำตาม:

command1
and command2
command1
or command2

นอกจากนี้ - เช่นเดียวกับใน bash - คุณสามารถใช้เครื่องหมายอัฒภาค;เพื่อรันสองคำสั่งหนึ่งคำสั่งต่อไปนี้

command1 ; command2

สิ่งนี้ช่วยให้การใช้ไวยากรณ์ที่คุ้นเคยมากขึ้น:

command1 ;and command2
command1 ;or command2

ดูhttp://fishshell.com/docs/current/tutorial.html#tut_combiners


4
มีปัญหา github แบบเปิดเพื่อเพิ่มการสนับสนุนสำหรับไวยากรณ์นี้: && ไม่ทำงาน·ปัญหา # 150 · fish-shell / fish-shell
aboy021

20
This allows using a more familiar syntax:เป็นอัตนัยมาก
Petr Peller

1
;andสามารถอ่านได้น้อยกว่า&&เซมิโคลอนแสดงให้เห็นว่าการดำเนินการไม่เกี่ยวข้องอย่างมีเหตุผล มันสั่นสะเทือนสายตา
Chimpanzee Warlike

@Elliott ฉันเห็นด้วย แต่ Fish ไม่ได้ให้ทางเลือกแก่คุณ
Dennis

1
โปรดทราบว่าในเชลล์ปลาและบอร์นและตัวดำเนินการ AND และ OR มีลำดับเดียวกันซึ่งแตกต่างจากภาษาที่ใช้ภาษา C: unix.stackexchange.com/a/88851/50703
balupton
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.