ใช้คำสั่ง Powershell ใน Windows CMD และรับเอาท์พุทสี


1

เมื่อฉันเรียกใช้คำสั่งนี้ใน Powershell มันจะแสดงผลด้วยสี

(curl wttr.in -UserAgent curl).Content

อย่างไรก็ตามเมื่อฉันรันคำสั่งเดียวกันใน Windows CMD ฉันจะได้ผลลัพธ์เดียวกัน แต่ไม่มีสี

powershell (curl wttr.in -UserAgent curl).Content

ฉันจะรันคำสั่ง Powershell ใน Windows CMD และรับผลลัพธ์ได้อย่างไร ในสี มันจะแสดงใน Powershell?


demo


3
คำถามแรกของฉันคือทำไมคุณถึงถอยหลัง cmd? ทำไมไม่ลองพักที่ Powershell ต่อไปฉันจะชี้ให้เห็นว่าสิ่งนี้ไม่สามารถทำได้ในคอนโซล cmd.exe มาตรฐาน
EBGreen

การตั้งค่าของฉันคือการใช้ Windows CMD มาตรฐาน คุณสามารถให้คำอธิบายว่าทำไมมันเป็นไปไม่ได้?
u01jmg3

เนื่องจาก cmd.exe มาตรฐานไม่มี hooks สำหรับเปลี่ยนสีของเอาต์พุตโดยทางโปรแกรม จริงๆแล้วมันไม่จริงทั้งหมด เริ่มต้นด้วย Win 10, cmd.exe รองรับมาตรฐาน ANSI escape sequences ดังนั้นฉันคิดว่าคุณสามารถเขียนไฟล์แบทช์ที่รับเอาท์พุทของคำสั่ง powershell แยกมันแล้วเปลี่ยนสีสำหรับเอาท์พุท หรืออีกวิธีหนึ่งคุณสามารถใช้เทคโนโลยีที่ใหม่กว่า
EBGreen

ขอบคุณคำอธิบาย คุณสามารถให้ความกระจ่างเพิ่มเติมเกี่ยวกับสิ่งที่ต้องการในแง่ของการแยกวิเคราะห์เอาต์พุต Powershell (โดยเฉพาะอย่างยิ่งขณะที่ Win10 ตอนนี้สนับสนุนลำดับ ANSI มาตรฐานหลบหนี) แม้แต่ตัวอย่างเดียวเพื่อให้ฉันไป
u01jmg3

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