Score:0

bash ไปป์หลายเอาต์พุตเป็นอินพุตไปยังคำสั่งอื่น

ธง in

ฉันไม่คุ้นเคยกับเชลล์สคริปต์และฉันพยายามส่งอาร์กิวเมนต์หลายรายการไปยังคำสั่ง ฉันมี url.txt ไฟล์ที่มีลักษณะดังนี้

ชื่อ1,http://url1
ชื่อ2,http://url2
ชื่อ3,http://url3
ชื่อ4,http://url4

ด้วยคำสั่งด้านล่างฉันสามารถรับผลลัพธ์หลังจากแยกด้วยเครื่องหมายจุลภาค

cat urls.txt | ตัด -d ',' -f1
cat urls.txt | ตัด -d ',' -f2

อันแรกให้ชื่อ1, ชื่อ2 และอื่นๆ และอันที่สองให้http://url1 http://url2 สิ่งที่ฉันต้องการทำคือไพพ์ทั้งคู่เป็นตัวแปรไปยังคำสั่งที่สามซึ่งฉันสามารถใช้ทั้งสองอย่างได้

ความคิดหรือข้อเสนอแนะใด ๆ ที่ชื่นชม?

Bodo avatar
pt flag
ดูเหมือนคำถามเกี่ยวกับเชลล์สคริปต์ซึ่งไม่เกี่ยวข้องกับ Ubuntu โดยเฉพาะ คุณอาจต้องการถามคำถามนี้บน https://stackoverflow.com/ โปรดอธิบายสิ่งที่คุณต้องการบรรลุ "คำสั่งที่สาม" ของคุณทำอะไร? คำอธิบายของคุณ "ไพพ์ทั้งคู่เป็นตัวแปรไปยังคำสั่งที่สาม" ไม่สมเหตุสมผล คำว่า *pipe* และ *variable* นั้นต่างกันท่อคือกระแสข้อมูลที่สามารถแบ่งออกเป็นบรรทัดหรือคำ
Bodo avatar
pt flag
ดู [BashFAQ/001](https://mywiki.wooledge.org/BashFAQ/001#Field_splitting.2C_whitespace_trimming.2C_and_other_input_processing)
Score:2
ธง ca
$ ในขณะที่ IFS=, อ่าน nam url ;do echo "name:$nam, url:$url" ; เสร็จแล้ว <urls.txt 
ชื่อ:name1, url:http://url1
ชื่อ:name2, url:http://url2
ชื่อ:name3, url:http://url3
ชื่อ:name4, url:http://url4

โพสต์คำตอบ

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