[{"data":1,"prerenderedAt":345},["ShallowReactive",2],{"project-37981683":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":44,"post_text":47,"what":48,"said":68,"maker_in_thread":164,"shape":175,"grid":179,"attempts":310,"same_week":311,"maker_shows":39,"maker_hidden":337,"reader_version":338,"card":339},"37981683","Pypipe","A Python command-line tool for pipeline processing","title","Show HN: Pypipe – A Python command-line tool for pipeline processing","https:\u002F\u002Fgithub.com\u002Fbugen\u002Fpypipe","github.com","bugen",1698035725,2023,213,45,261,3109,9,"notable","dev_tools","command-line utility","cli",[24,25,26,27,28],"python pipeline","command line","pipe processing","stdin python","awk alternative","loved",0.447,{"positive":32,"neutral":33,"mixed":33,"critical":34},12,4,2,22,{"docs":37,"design":40,"idea":41,"performance":43},{"positive":38,"critical":39},0,1,{"positive":39,"critical":39},{"positive":42,"critical":38},11,{"positive":38,"critical":38},[39,38,38,39,45,38,38,46,38,38,38,38,38,38,46,38,46,46,45,38,46,46,46,46,45,46,38,46,45,45,45,45,46,45,38,38,38,38,46,38],3,5,"pypipe is a command-line tool for writing data pipelines in Python. When working with data processing in the terminal, I often find myself wanting to pass the output of commands to Python for further processing. In such cases, one can either write one-liners or create regular Python scripts and connect them through pipes. However, using pypipe makes this process more convenient and efficient.",{"problem":49,"audience":55,"pricing":55,"motivation":56,"time_to_build":55,"stack":60,"openness":66,"stage":67,"team_size":67},{"value":50,"source":51,"evidence":52},"Passing command output to Python for processing is awkward; one-liners or scripts piped together are clumsy","maker",[53],{"id":54},"post",null,{"value":57,"source":51,"evidence":58},"Maker often works with terminal data and wanted Python processing in pipes more conveniently",[59],{"id":54},[61],{"value":62,"source":63,"evidence":64},"Python","inferred",[65],{"id":54},"open_source","unknown",{"praise":69,"objections":97,"requests":105,"questions":124,"alternatives":132},[70,86],{"value":71,"source":72,"evidence":73},"Simple and useful, similar to Perl one-liners and awk","commenter",[74,78,82],{"id":75,"by":76,"text":77},"37989099","ekiauhce","Nice project! It gives me so much Perl one-liners vibe, when `perl` command combined with `-p` and `-e` flags allows you to write super concise programs for bash pipelines. Some…",{"id":79,"by":80,"text":81},"37983355","aronhegedus","Looks fun! Like a nicer AWK",{"id":83,"by":84,"text":85},"37984159","imglorp","A better analog would be perl -ne. It was only a matter of time before python got this.",{"value":87,"source":72,"evidence":88},"Fun idea that fills a gap for Python users",[89,93],{"id":90,"by":91,"text":92},"37994071","enoch2090","I have a feeling that in most use cases this is replacing grep and awk in a familiar way to Python programmers, especially the latter with its own grammar. Fun stuff!",{"id":94,"by":95,"text":96},"37987963","paiute","I’ve had dreams about making this sort of tool. I’m so thrilled to see this!!!!",[98],{"value":99,"source":72,"evidence":100},"First example (line[::2]) is confusing",[101],{"id":102,"by":103,"text":104},"37986173","robertlagrant","``` $ echo \"pypipe\" | ppp \"line[::2]\" ppp ``` This is an incredibly confusing first example!",[106,117],{"value":107,"source":72,"evidence":108},"Support auto-import of modules like pyp and pawk",[109,113],{"id":110,"by":111,"text":112},"37983418","networked","This looks interesting! A tool in the same vein that I already use is pyp (`pypyp` on PyPI). This project, pypipe, has built-in record splitting and CSV support that pyp doesn't.…",{"id":114,"by":115,"text":116},"37988602","make3","https:\u002F\u002Fgithub.com\u002Falecthomas\u002Fpawk is also great, & auto imports any module that you use",{"value":118,"source":72,"evidence":119},"Package for brew or apt",[120],{"id":121,"by":122,"text":123},"37987107","Difwif","Nice! My go to system scripting is bash that calls python for the things that just suck doing in bash. I didn't see a method to do it but it would be great if this could cleanup…",[125],{"value":126,"source":72,"evidence":127},"How does performance compare with awk",[128],{"id":129,"by":130,"text":131},"37984040","hk__2","Nice! How does it compare performance-wise with AWK?",[133,137,141,146,153,157],{"value":134,"source":72,"evidence":135},"pyp",[136],{"id":110,"by":111,"text":112},{"value":138,"source":72,"evidence":139},"pawk",[140],{"id":114,"by":115,"text":116},{"value":142,"source":72,"evidence":143},"Perl one-liners (perl -ne)",[144,145],{"id":75,"by":76,"text":77},{"id":83,"by":84,"text":85},{"value":147,"source":72,"evidence":148},"awk",[149],{"id":150,"by":151,"text":152},"37983165","kunley","Cool! My tool of choice for such things is awk, still, it's good to have more alternatives",{"value":154,"source":72,"evidence":155},"Mario",[156],{"id":110,"by":111,"text":112},{"value":158,"source":72,"evidence":159},"nushell",[160],{"id":161,"by":162,"text":163},"37987295","zak905","In the same spirit as the nushell project https:\u002F\u002Fwww.nushell.sh\u002F",{"comments":33,"answered":39,"key":165},[166,169,172],{"id":167,"text":168},"37993923","Thank you for all the comments and advice. I'm truly surprised by the response, it's beyond what I expected. It was here that I learned about other projects similar to pypipe for…",{"id":170,"text":171},"37994072","Thank you for using pypipe! ``` How about? cat staff.xml | ppp xpath -O path='.\u002FAnimal\u002FAge' ``` I also wanted to allow custom commands like this, but I decided on the current…",{"id":173,"text":174},"37996136","pawk is awesome. What concise code! I absolutely adore the simplicity of pawk.",{"commenters":176,"max_depth":33,"maker_replies":33,"first_comment_mins":177,"lifespan_hours":178},36,251,281,[180,182,186,188,191,195,198,201,205,208,210,212,215,217,218,222,225,228,230,231,233,236,238,242,246,249,252,256,261,265,268,270,273,275,279,281,285,287,289,290,292,295,298,301,306],[102,38,39,181,103,38],"project\u002Fcritical\u002Fdocs",[183,38,38,184,185,38],"37987110","commenter\u002Fneutral\u002Fnone","js2",[187,38,38,184,103,38],"37987593",[189,38,39,190,185,38],"37988135","project\u002Fcritical\u002Fdesign",[192,38,45,193,194,38],"37988202","project\u002Fneutral\u002Fdocs","jedberg",[196,38,38,184,197,38],"37988804","paddy_m",[199,38,38,184,200,38],"37989227","DigiDigiorno",[202,39,46,203,204,38],"37987354","project\u002Fpositive\u002Fidea","polyrand",[206,39,38,184,207,38],"37987486","BiteCode_dev",[209,39,38,184,204,38],"37988662",[211,39,38,184,111,38],"37990193",[213,39,38,184,214,38],"38005920","linsomniac",[167,34,38,216,11,39],"maker\u002Fpositive\u002Fnone",[150,45,38,184,151,38],[219,45,38,220,221,38],"37989214","other\u002Fneutral\u002Fnone","smithza",[223,33,46,203,224,38],"37986045","dbragdon",[226,33,38,220,227,38],"37989599","leandot",[229,33,38,220,224,38],"38135010",[75,46,46,203,76,38],[94,232,46,203,95,38],6,[121,234,45,235,122,38],7,"project\u002Fmixed\u002Fidea",[161,237,38,220,162,38],8,[239,18,46,240,241,38],"37984502","project\u002Fpositive\u002Fdesign","shellmachine",[243,244,46,203,245,38],"37983107",10,"marcyb5st",[247,42,46,203,248,38],"37987651","fwungy",[250,32,38,220,251,38],"37990867","AndyKluger",[253,254,46,203,255,38],"37983608",13,"izoow",[257,258,45,259,260,38],"37985980",14,"project\u002Fmixed\u002Fdesign","mrbonner",[262,263,46,203,264,38],"37987478",15,"syrusakbary",[266,263,38,220,267,38],"37987899","theamk",[90,269,46,203,91,38],16,[129,271,45,272,130,38],17,"project\u002Fneutral\u002Fperformance",[83,271,45,274,84,38],"project\u002Fneutral\u002Fidea",[276,277,45,259,278,38],"37984980",18,"williamcotton",[170,277,38,280,11,39],"maker\u002Fneutral\u002Fdesign",[282,283,45,274,284,38],"38092724",19,"ddgflorida",[79,286,46,203,80,38],20,[110,288,45,235,111,38],21,[114,288,38,220,115,38],[173,288,38,291,11,39],"other\u002Fpositive\u002Fnone",[293,288,38,294,11,39],"37995813","maker\u002Fneutral\u002Fidea",[296,288,38,297,111,38],"37998216","commenter\u002Fneutral\u002Fidea",[299,35,46,203,300,38],"37989445","leonjza",[302,303,38,304,305,38],"37983130",23,"other\u002Fcritical\u002Fidea","aquir",[307,303,38,308,309,38],"37983583","commenter\u002Fcritical\u002Fidea","bjornasm",[],[312,316,320,325,330,334],{"id":313,"name":314,"points":315,"category":20},"38012032","OpenAPI DevTools",811,{"id":317,"name":318,"points":319,"category":20},"37943931","Autotab",376,{"id":321,"name":322,"points":323,"category":324},"38006814","Restaurants in Peace",181,"consumer_social",{"id":326,"name":327,"points":328,"category":329},"37956065","CFR[]",176,"creative",{"id":331,"name":332,"points":333,"category":20},"37995761","Revert",168,{"id":335,"name":336,"points":333,"category":329},"38011432","ArtistAssistApp",false,"v2",{"id":340,"name":5,"line":6,"ai":337,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":341,"top":18,"kw":342,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":343,"url":9,"mix":344,"praise":71,"objection":99,"sub":21},37981683,0.45,[24,25,26,27,28],"1001300500000050553055553505333353000050",[32,33,33,34],1794036643555]