หนึ่งสามารถใช้ที่นี่หลายเอกสารเพื่อให้ข้อมูลกับคำสั่งในทุบตี?
$ cat <<<foo <<<bar
bar
$ cat <<EOF1 <<EOF2
> foo
> EOF1
> bar
> EOF2
bar
เห็นได้ชัดว่าในทั้งสองกรณีเอกสาร here-doc ที่สองถูกใช้เป็น stdin และแทนที่การอ้างอิงแรก เป็นวิธีการใช้งานecho
ของแทนหรือไม่?
$ cat <(echo -n foo) <(echo bar)
foobar
นอกจากนี้ด้วยเหตุผลบางอย่างการใช้ชุดค่าผสมไม่ได้ผลสำหรับฉัน ทำไมถึงเป็นเช่นนั้น?
$ cat <<<foo <(echo bar)
bar
$ cat <(echo -n foo) <<<bar
foo
มีเหตุผลใดที่อยู่เบื้องหลังความจริงที่ว่าคุณต้องการใช้เอกสารสองฉบับที่นี่แทนที่จะรวมเข้าเป็นหนึ่งเดียว?
—
ถั่ว
@beans จริง ๆ แล้วฉันพบมันเมื่อทำการทดสอบ
—
Sparhawk
paste
ด้วยอินพุตแบบจำลอง ฉันคิดว่าฉันสามารถคิดสถานการณ์อื่น ๆ ไม่กี่ หากฉันมีสคริปต์ที่มีข้อความที่ควบคุมไว้ล่วงหน้าในตัวแปรบางตัวฉันอาจต้องการทำบางสิ่งบางอย่างกับทั้งสองโดยใช้คำสั่งที่รับเฉพาะไฟล์diff
เท่านั้น
อีกกรณีการใช้งาน (ฉันพบนี้โดยใช้เอกสารที่นี่เพื่อสร้างสคริปต์เปลือก):
—
Toby Speight
cat <<EOF1 <<"EOF2"
คุณต้องการไม่กี่บรรทัดกับการขยายตัวตัวแปรแล้วเส้นบางโดยไม่ต้อง: