คำถามติดแท็ก pipe

ไปป์คือการเชื่อมต่อระหว่างกระบวนการระหว่างตัวอธิบายไฟล์ของสองกระบวนการ ไปป์ถูกสร้างขึ้นด้วยฟังก์ชัน POSIX ไปป์ () (จาก <unistd.h>) เชลล์สร้างท่อระหว่างกระบวนการถ้า "|" ใช้สัญลักษณ์: "cmd1 | cmd2" กำหนดเอาต์พุตของ cmd1 ไปยังอินพุตของ cmd2 บน Windows ให้ใช้ CreatePipe () กลไกนี้เปลี่ยนทิศทางอินพุตมาตรฐานเอาต์พุตมาตรฐานและข้อผิดพลาดมาตรฐานไปยังกระบวนการเรียกใน. NET และ Java

7
ใช้ท่อภายใน ngModel กับองค์ประกอบ INPUT ในเชิงมุม
ฉันมีช่องป้อน HTML &lt;input [(ngModel)]="item.value" name="inputField" type="text" /&gt; และฉันต้องการจัดรูปแบบค่าและใช้ไพพ์ที่มีอยู่: .... [(ngModel)]="item.value | useMyPipeToFormatThatValue" .... และได้รับข้อความแสดงข้อผิดพลาด: ไม่สามารถมีไพพ์ในนิพจน์การดำเนินการ ฉันจะใช้ไพพ์ในบริบทนี้ได้อย่างไร

3
รักษาสีหลังจากการ grep piping เพื่อ grep
มีคำถามเกี่ยวกับ simlar ในPreserve ls หลังจาก grep'ingแต่มันทำให้ฉันรำคาญว่าถ้าคุณใส่ grep color output ไปยัง grep ตัวอื่นที่สีนั้นไม่ได้ถูกสงวนไว้ เป็นตัวอย่างgrep --color WORD * | grep -v AVOIDไม่ให้สีของเอาท์พุทแรก แต่สำหรับฉันls | grep FILEเก็บสีทำไมถึงแตกต่าง
140 linux  bash  colors  grep  pipe 

5
ด้วยการทุบตีฉันจะท่อข้อผิดพลาดมาตรฐานไปยังกระบวนการอื่นได้อย่างไร
เป็นที่ทราบกันดีว่าจะวางท่อส่งออกมาตรฐานของกระบวนการไปยังอินพุตมาตรฐานอื่นของกระบวนการได้อย่างไร: proc1 | proc2 แต่ถ้าฉันต้องการส่งข้อผิดพลาดมาตรฐานของ proc1 ไปยัง proc2 และปล่อยให้เอาต์พุตมาตรฐานไปยังตำแหน่งปัจจุบัน คุณคิดว่าbashจะมีคำสั่งตามบรรทัดของ: proc1 2| proc2 แต่อนิจจาไม่ มีวิธีใดบ้างที่จะทำเช่นนี้?
140 bash  pipe  stderr 


4
ไวยากรณ์หลายบรรทัดสำหรับการวางท่อ heredoc; พกพาได้ไหม
ฉันคุ้นเคยกับไวยากรณ์นี้: cmd1 &lt;&lt; EOF | cmd2 text EOF แต่เพิ่งค้นพบว่า bash ช่วยให้ฉันเขียน: cmd1 &lt;&lt; EOF | text EOF cmd2 (heredoc ใช้เป็นอินพุตไปยัง cmd1 และเอาต์พุตของ cmd1 จะถูกส่งไปยัง cmd2) นี่ดูเหมือนไวยากรณ์ที่แปลกมาก พกพาได้ไหม
132 bash  shell  pipe  sh  heredoc 

4
อะไรคือพารามิเตอร์สำหรับจำนวน Pipe - Angular 2
ฉันใช้ท่อตัวเลขด้านล่างเพื่อ จำกัด ตัวเลขเป็นทศนิยมสองตำแหน่ง {{ exampleNumber | number : '1.2-2' }} ฉันสงสัยว่าตรรกะเบื้องหลัง '1.2-2' คืออะไร? ฉันได้เล่นกับสิ่งเหล่านี้เพื่อพยายามบรรลุไปป์ที่กรองตำแหน่งทศนิยมเป็นศูนย์ แต่ไม่มีประโยชน์
123 angular  pipe  decimal 

6
ตรวจสอบว่า stdin เป็นขั้วหรือท่อ?
เมื่อฉันรัน " python" จากเทอร์มินัลโดยไม่มีข้อโต้แย้งมันจะแสดงเชลล์โต้ตอบของ Python เมื่อฉันรัน " cat | python" จากเทอร์มินัลมันจะไม่เปิดโหมดโต้ตอบ อย่างไรก็ตามโดยไม่ได้รับอินพุตใด ๆ ก็ตรวจพบว่าเชื่อมต่อกับท่อ ฉันจะตรวจจับที่คล้ายกันใน C หรือ C ++ หรือ Qt ได้อย่างไร
118 c++  c  qt  pipe  stdin 

6
บังคับให้ไลน์บัฟเฟอร์ของ stdout เมื่อส่งไปที่ที
โดยปกติจะstdoutเป็นบรรทัดบัฟเฟอร์ กล่าวอีกนัยหนึ่งคือตราบใดที่printfอาร์กิวเมนต์ของคุณจบลงด้วยการขึ้นบรรทัดใหม่คุณสามารถคาดหวังว่าจะพิมพ์บรรทัดได้ทันที teeนี้จะไม่ปรากฏการระงับเมื่อใช้ท่อเปลี่ยนเส้นทางไปยัง ฉันมีโปรแกรม C ++ aที่ส่งออกสตริงเสมอ - เทอร์มิ\nนนิ่งเป็นstdout. เมื่อรันด้วยตัวเอง ( ./a) ทุกอย่างจะพิมพ์ออกมาอย่างถูกต้องและในเวลาที่เหมาะสมตามที่คาด แต่ถ้าฉันท่อมันtee( ./a | tee output.txt) teeก็ไม่ได้พิมพ์อะไรจนกว่าจะจบการทำงานซึ่งขัดแย้งกับวัตถุประสงค์ของการใช้ ฉันรู้ว่าฉันสามารถแก้ไขได้โดยเพิ่มfflush(stdout)การดำเนินการหลังการพิมพ์แต่ละครั้งในโปรแกรม C ++ แต่มีวิธีที่ง่ายกว่านี้ไหม? มีคำสั่งที่ฉันสามารถรันได้ไหมตัวอย่างเช่นที่จะบังคับstdoutให้เป็นไลน์บัฟเฟอร์แม้ว่าจะใช้ไปป์
118 unix  buffer  pipe  stdout  tee 

7
จะส่งสตริงง่ายๆระหว่างสองโปรแกรมโดยใช้ไปป์ได้อย่างไร?
ฉันลองค้นหาในเน็ต แต่แทบจะไม่มีทรัพยากรเลย ตัวอย่างเล็กน้อยก็เพียงพอแล้ว แก้ไขฉันหมายถึงโปรแกรม C สองโปรแกรมที่สื่อสารกัน โปรแกรมหนึ่งควรส่ง "สวัสดี" และอีกโปรแกรมควรได้รับ อะไรแบบนั้น.
111 c  unix  pipe 

4
Angular 2 ไปป์ที่เปลี่ยนออบเจ็กต์ JSON เป็น JSON ที่พิมพ์ออกมาได้สวย
พยายามเขียนไปป์ Angular 2 ที่จะใช้สตริงอ็อบเจ็กต์ JSON และส่งคืนรูปแบบ / รูปแบบที่สวยงามเพื่อแสดงต่อผู้ใช้ ตัวอย่างเช่นจะใช้สิ่งนี้: {"id": 1, "number": "K3483483344", "state": "CA", "active": true} และส่งคืนสิ่งที่มีลักษณะเช่นนี้เมื่อแสดงใน HTML: ดังนั้นในมุมมองของฉันฉันสามารถมีบางอย่างเช่น: &lt;td&gt; {{ record.jsonData | prettyprint }} &lt;/td&gt;

7
ขอบเขตตัวแปร Bash
โปรดอธิบายให้ฉันทราบว่าเหตุใดข้อความสุดท้ายechoจึงว่างเปล่า? ฉันคาดว่าXCODEจะเพิ่มขึ้นใน while loop เป็นค่า 1: #!/bin/bash OUTPUT="name1 ip ip status" # normally output of another command with multi line output if [ -z "$OUTPUT" ] then echo "Status WARN: No messages from SMcli" exit $STATE_WARNING else echo "$OUTPUT"|while read NAME IP1 IP2 STATUS do if [ "$STATUS" != "Optimal" …
104 bash  scope  pipe 

3
จะหลีกเลี่ยงท่อถ่านในคำสั่งรหัสในตารางมาร์กดาวน์ได้อย่างไร
ใน GitHub ฉันต้องการสร้างตารางที่มีชิ้นส่วนของโค้ดใน Markdown มันใช้งานได้ดียกเว้นเมื่อฉันใส่ไปป์ char (เช่น |) ระหว่างตัวอักษร backtick (เช่น `) นี่คือสิ่งที่ฉันต้องการ: a | r ------------|----- `a += x;` | r1 `a |= y;` | r2 ปัญหาคือแถบแนวตั้งในคำสั่งรหัสของบรรทัดที่สองถูกตีความว่าเป็นตัวคั่นคอลัมน์ จากนั้นการแสดงผลตารางจะดูน่าเกลียดทีเดียว ฉันจะหลีกเลี่ยงสิ่งนั้นได้อย่างไร โปรดทราบว่าฉันพยายามแล้วที่จะใช้&amp;#124;โค้ด HTML a &amp;#124;= y;แต่จะผลิต

4
git update-index - สมมติว่าไม่มีการเปลี่ยนแปลงในไดเรกทอรี
คอมไพล์ 1.7.12 ฉันต้องการทำเครื่องหมายไฟล์ทั้งหมดด้านล่างไดเร็กทอรีที่กำหนดว่าไม่เปลี่ยนแปลง 1) git update-index --assume-unchaged dir/ให้ "ละเว้นเส้นทาง" 2) git update-index --assume-unchaged dir/*ล้มเหลวอย่างรวดเร็วเนื่องจากจะพบไฟล์ที่ไม่ได้รับการติดตามดังนั้นจึงให้ "fatal: Unable to mark file" และออก 3) ลองสร้างรายการไฟล์เพื่อทำเครื่องหมาย ลงในไดเรกทอรีที่ต้องการแล้ววิ่งcd git ls-files | tr '\n' ' ' | git update-index --assume-unchangedสิ่งนี้ไม่มีข้อความแสดงข้อผิดพลาด แต่ทำเครื่องหมายไฟล์ไม่สำเร็จ ส่วนแรกของคำสั่งgit ls-files | tr '\n' ' 'สร้างรายการที่คั่นด้วยช่องว่างของไฟล์ทั้งหมดที่ฉันต้องการทำเครื่องหมายอย่างถูกต้อง หากฉันคัดลอกและวางผลลัพธ์ของคำสั่งนั้นลงในบรรทัดคำสั่งคำสั่งนั้นจะgit update-indexทำงาน อะไรไม่ทำงานกับท่อ? ไม่เพียงพอสำหรับฉันที่จะเพิ่มdirใน. gitignore ฉันต้องการให้ไฟล์เหล่านี้อยู่ในที่เก็บ แต่การเปลี่ยนแปลงที่ไม่ต้องการจะเกิดขึ้นภายในเครื่องซึ่งจำเป็นต้องละเว้นเพื่อให้ผู้ใช้สามารถดึงได้
101 git  command-line  pipe 

4
การจับรหัสข้อผิดพลาดในเชลล์ไปป์
ขณะนี้ฉันมีสคริปต์ที่ทำบางอย่างเช่น ./a | ./b | ./c ฉันต้องการแก้ไขเพื่อที่ว่าถ้ามี a, b หรือ c ออกด้วยรหัสข้อผิดพลาดฉันพิมพ์ข้อความแสดงข้อผิดพลาดและหยุดแทนที่จะส่งผลลัพธ์ที่ไม่ดีไปข้างหน้า อะไรคือวิธีที่ง่ายที่สุด / สะอาดที่สุดในการทำเช่นนั้น?

2
ท่อบัฟเฟอร์ไปยังคำสั่งภายนอกใน Vim
ฉันเป็นมือใหม่แบบ Vim ฉันต้องการส่งเนื้อหาของบัฟเฟอร์ปัจจุบันไปยัง stdin ของคำสั่งภายนอก (สมมติว่าเมล) จุดประสงค์สุดท้ายของฉันคือการตั้งค่าทางลัดเพื่อส่งอีเมลจากบัฟเฟอร์ Vim ปัจจุบันอย่างรวดเร็ว ฉันเดาว่านี่น่าจะเป็นเรื่องเล็กน้อย แต่ฉันไม่สามารถหาวิธีส่ง Vim buffer ไปยังคำสั่งภายนอกได้ ขอบคุณล่วงหน้า.
97 vim  pipe  external 

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