{"id":410,"date":"2012-11-08T21:00:00","date_gmt":"2012-11-08T21:00:00","guid":{"rendered":"http:\/\/www.b.shuttle.de\/hayek\/Hayek\/Jochen\/wp\/blog-en\/2012\/11\/08\/ppt-perl-power-tools-unix-reconstruction-project\/"},"modified":"2012-11-08T21:00:00","modified_gmt":"2012-11-08T21:00:00","slug":"ppt-perl-power-tools-unix-reconstruction-project","status":"publish","type":"post","link":"https:\/\/wp.jochen.hayek.name\/blog-en\/2012\/11\/08\/ppt-perl-power-tools-unix-reconstruction-project\/","title":{"rendered":"PPT = Perl Power Tools: &#8220;Unix Reconstruction Project&#8221;"},"content":{"rendered":"<ul>\n<li><a href=\"http:\/\/perlpowertools.com\">http:\/\/perlpowertools.com<\/a><\/li>\n<li><a href=\"http:\/\/www.metacpan.org\/module\/PerlPowerTools\">http:\/\/www.metacpan.org\/module\/PerlPowerTools<\/a><\/li>\n<li><a href=\"https:\/\/metacpan.org\/release\/ppt\">metacpan.org\/release\/ppt<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/briandfoy\/PerlPowerTools\">https:\/\/github.com\/briandfoy\/PerlPowerTools<\/a><\/li>\n<li><a href=\"http:\/\/blogs.perl.org\/users\/brian_d_foy\/2014\/09\/revitalizing-the-perl-power-tools.html\">http:\/\/blogs.perl.org\/users\/brian_d_foy\/2014\/09\/revitalizing-the-perl-power-tools.html<\/a><\/li>\n<li><a href=\"http:\/\/cpansearch.perl.org\/src\/CWEST\/ppt-0.14\/html\/index.html\">http:\/\/cpansearch.perl.org\/src\/CWEST\/ppt-0.14\/html\/index.html<\/a>\u00a0\u2013 maybe the best entrance to read up on the project<\/li>\n<\/ul>\n<blockquote><p><i>Welcome to the Unix Reconstruction Project.<br \/>\nOur goal is quite simply\u00a0to reimplement the classic Unix command set in pure Perl, and to have\u00a0as much fun as we can doing so.<\/i><\/p><\/blockquote>\n<div>\n<p>I would really love to have a few more utilities\u00a0in that collection:<\/p>\n<ul>\n<li>&#8220;seq&#8221; [<a href=\"http:\/\/en.wikipedia.org\/wiki\/Seq_(Unix)\">link<\/a>]<\/li>\n<li>\u2026<\/li>\n<\/ul>\n<div>Yes, the GNU coreutils do certain things much, much better, but still \u2026 \u2013 yet: you can install PPT privately and with a rather small footprint, which makes them rather suitable in certain corporate environments.<\/div>\n<div><\/div>\n<div>Just a few goodies:<\/div>\n<\/div>\n<div>\n<ul>\n<li><a href=\"https:\/\/metacpan.org\/module\/CWEST\/ppt-0.14\/html\/commands\/grep\/tcgrep\">tcgrep<\/a> lets you traverse directory trees \u2013 more or less like <i>ack<\/i> (see below!)<\/li>\n<li><a href=\"https:\/\/metacpan.org\/module\/CWEST\/ppt-0.14\/bin\/tail\">tail<\/a> lets you follow multiple files simultaneously<\/li>\n<li>\u2026<\/li>\n<\/ul>\n<\/div>\n<div>Parts of the collection with a separate life outside the collection:<\/div>\n<div>\n<ul>\n<li><a href=\"http:\/\/perl.plover.com\/diff\/\">http:\/\/perl.plover.com\/diff\/<\/a>\u00a0resp.<\/li>\n<li><a href=\"https:\/\/metacpan.org\/pod\/Algorithm::Diff\">https:\/\/metacpan.org\/pod\/Algorithm::Diff<\/a><\/li>\n<li>\u2026<\/li>\n<\/ul>\n<\/div>\n<p>A few utilities, that are not formally a part of this collection:<\/p>\n<ul>\n<li><a href=\"https:\/\/metacpan.org\/module\/ack\">metacpan.org\/module\/ack<\/a>\u00a0\u2013\u00a0grep-like text finder \u2013 more or less like <i>tcgrep<\/i> (see above!)<\/li>\n<li>\u2026<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>http:\/\/perlpowertools.com http:\/\/www.metacpan.org\/module\/PerlPowerTools metacpan.org\/release\/ppt https:\/\/github.com\/briandfoy\/PerlPowerTools http:\/\/blogs.perl.org\/users\/brian_d_foy\/2014\/09\/revitalizing-the-perl-power-tools.html http:\/\/cpansearch.perl.org\/src\/CWEST\/ppt-0.14\/html\/index.html\u00a0\u2013 maybe the best entrance to read up on the project Welcome to the Unix Reconstruction Project. Our goal is quite simply\u00a0to reimplement the classic Unix command set in pure Perl, and to have\u00a0as much fun as we can doing so. I would really love to have a few more [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_share_on_mastodon":"0"},"categories":[623,666],"tags":[1219],"class_list":["post-410","post","type-post","status-publish","format-standard","hentry","category-the-perl-programming-language","category-uncategorized","tag-perl-power-tools"],"share_on_mastodon":{"url":"","error":""},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paO0kP-6C","jetpack_likes_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/posts\/410","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/comments?post=410"}],"version-history":[{"count":0,"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/posts\/410\/revisions"}],"wp:attachment":[{"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/media?parent=410"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/categories?post=410"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.jochen.hayek.name\/blog-en\/wp-json\/wp\/v2\/tags?post=410"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}