document.write('<link rel="stylesheet" href="http://gist.github.com/stylesheets/gist/embed.css"/>')





document.write('<div id=\"gist-64664\" class=\"gist\">\n  \n  \n    \n            \n\n      <div class=\"gist-file\">\n        <div class=\"gist-data gist-syntax\">\n          \n          \n          \n            <div class=\"gist-highlight\"><pre><div class=\"line\" id=\"LC1\"><span class=\"c\">#! /usr/bin/env python<\/span><\/div><div class=\"line\" id=\"LC2\">&nbsp;<\/div><div class=\"line\" id=\"LC3\"><span class=\"sd\">&quot;&quot;&quot;<\/span><\/div><div class=\"line\" id=\"LC4\"><span class=\"sd\">uncompress packages from ~/software/ directory<\/span><\/div><div class=\"line\" id=\"LC5\"><span class=\"sd\">&quot;&quot;&quot;<\/span><\/div><div class=\"line\" id=\"LC6\">&nbsp;<\/div><div class=\"line\" id=\"LC7\"><span class=\"kn\">import<\/span> <span class=\"nn\">os<\/span><span class=\"o\">,<\/span> <span class=\"nn\">sys<\/span><\/div><div class=\"line\" id=\"LC8\">&nbsp;<\/div><div class=\"line\" id=\"LC9\"><span class=\"n\">p<\/span> <span class=\"o\">=<\/span> <span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"n\">path<\/span><\/div><div class=\"line\" id=\"LC10\"><span class=\"n\">cwd<\/span> <span class=\"o\">=<\/span> <span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"n\">getcwd<\/span><span class=\"p\">()<\/span><\/div><div class=\"line\" id=\"LC11\">&nbsp;<\/div><div class=\"line\" id=\"LC12\"><span class=\"k\">if<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">dirname<\/span><span class=\"p\">(<\/span><span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">abspath<\/span><span class=\"p\">(<\/span><span class=\"n\">sys<\/span><span class=\"o\">.<\/span><span class=\"n\">argv<\/span><span class=\"p\">[<\/span><span class=\"mi\">0<\/span><span class=\"p\">]))<\/span> <span class=\"o\">!=<\/span> <span class=\"n\">cwd<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC13\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;Usage: ./uncompress.py&quot;<\/span><\/div><div class=\"line\" id=\"LC14\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sys<\/span><span class=\"o\">.<\/span><span class=\"n\">exit<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC15\">&nbsp;<\/div><div class=\"line\" id=\"LC16\"><span class=\"n\">cwd<\/span> <span class=\"o\">+=<\/span> <span class=\"s\">&#39;/&#39;<\/span> <span class=\"c\"># add slash<\/span><\/div><div class=\"line\" id=\"LC17\"><span class=\"nb\">dir<\/span> <span class=\"o\">=<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">expanduser<\/span><span class=\"p\">(<\/span><span class=\"s\">&#39;~&#39;<\/span><span class=\"p\">)<\/span> <span class=\"o\">+<\/span> <span class=\"s\">&quot;/software/&quot;<\/span><\/div><div class=\"line\" id=\"LC18\">&nbsp;<\/div><div class=\"line\" id=\"LC19\"><span class=\"k\">if<\/span> <span class=\"ow\">not<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">exists<\/span><span class=\"p\">(<\/span><span class=\"nb\">dir<\/span><span class=\"p\">):<\/span><\/div><div class=\"line\" id=\"LC20\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;* [&quot;<\/span> <span class=\"o\">+<\/span> <span class=\"nb\">dir<\/span> <span class=\"o\">+<\/span> <span class=\"s\">&quot;] not exists.&quot;<\/span><\/div><div class=\"line\" id=\"LC21\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sys<\/span><span class=\"o\">.<\/span><span class=\"n\">exit<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC22\">&nbsp;<\/div><div class=\"line\" id=\"LC23\"><span class=\"n\">packages<\/span> <span class=\"o\">=<\/span> <span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"n\">popen<\/span><span class=\"p\">(<\/span><span class=\"s\">&quot;ls &quot;<\/span> <span class=\"o\">+<\/span> <span class=\"nb\">dir<\/span> <span class=\"o\">+<\/span> <span class=\"s\">&quot; | grep -i &#39;[(gz|bz2)]$&#39;&quot;<\/span><span class=\"p\">)<\/span><span class=\"o\">.<\/span><span class=\"n\">read<\/span><span class=\"p\">()<\/span><span class=\"o\">.<\/span><span class=\"n\">split<\/span><span class=\"p\">(<\/span><span class=\"s\">&#39;<\/span><span class=\"se\">\\n<\/span><span class=\"s\">&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC24\">&nbsp;<\/div><div class=\"line\" id=\"LC25\"><span class=\"k\">if<\/span> <span class=\"ow\">not<\/span> <span class=\"nb\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">packages<\/span><span class=\"p\">):<\/span><\/div><div class=\"line\" id=\"LC26\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;* nothing to uncompress.&quot;<\/span><\/div><div class=\"line\" id=\"LC27\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sys<\/span><span class=\"o\">.<\/span><span class=\"n\">exit<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC28\">&nbsp;<\/div><div class=\"line\" id=\"LC29\"><span class=\"n\">to_uncompress<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">filter<\/span><span class=\"p\">(<\/span><span class=\"k\">lambda<\/span> <span class=\"n\">x<\/span><span class=\"p\">:<\/span> <span class=\"ow\">not<\/span> <span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"n\">path<\/span><span class=\"o\">.<\/span><span class=\"n\">exists<\/span><span class=\"p\">(<\/span><span class=\"n\">cwd<\/span> <span class=\"o\">+<\/span> <span class=\"n\">x<\/span><span class=\"o\">.<\/span><span class=\"n\">split<\/span><span class=\"p\">(<\/span><span class=\"s\">&#39;tar&#39;<\/span><span class=\"p\">)[<\/span><span class=\"mi\">0<\/span><span class=\"p\">][:<\/span><span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"p\">]),<\/span> <span class=\"n\">packages<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC30\">&nbsp;<\/div><div class=\"line\" id=\"LC31\"><span class=\"k\">if<\/span> <span class=\"nb\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">to_uncompress<\/span><span class=\"p\">):<\/span><\/div><div class=\"line\" id=\"LC32\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">for<\/span> <span class=\"n\">i<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">to_uncompress<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC33\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"nb\">file<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">dir<\/span> <span class=\"o\">+<\/span> <span class=\"n\">i<\/span><span class=\"p\">;<\/span><\/div><div class=\"line\" id=\"LC34\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">if<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">isfile<\/span><span class=\"p\">(<\/span><span class=\"nb\">file<\/span><span class=\"p\">):<\/span><\/div><div class=\"line\" id=\"LC35\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">cmd<\/span> <span class=\"o\">=<\/span> <span class=\"s\">&#39;tar -x&#39;<\/span><\/div><div class=\"line\" id=\"LC36\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">if<\/span> <span class=\"n\">i<\/span><span class=\"p\">[<\/span><span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"p\">:]<\/span> <span class=\"o\">==<\/span> <span class=\"s\">&#39;2&#39;<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC37\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c\"># bz2 package<\/span><\/div><div class=\"line\" id=\"LC38\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">cmd<\/span> <span class=\"o\">+=<\/span> <span class=\"s\">&#39;jf &#39;<\/span><\/div><div class=\"line\" id=\"LC39\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">else<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC40\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c\"># gzip package<\/span><\/div><div class=\"line\" id=\"LC41\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">cmd<\/span> <span class=\"o\">+=<\/span> <span class=\"s\">&#39;zf &#39;<\/span><\/div><div class=\"line\" id=\"LC42\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;* uncompressing &quot;<\/span> <span class=\"o\">+<\/span> <span class=\"nb\">file<\/span><\/div><div class=\"line\" id=\"LC43\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"n\">system<\/span><span class=\"p\">(<\/span><span class=\"n\">cmd<\/span> <span class=\"o\">+<\/span> <span class=\"nb\">file<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC44\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">else<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC45\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;* [&quot;<\/span> <span class=\"o\">+<\/span> <span class=\"nb\">file<\/span> <span class=\"o\">+<\/span> <span class=\"s\">&quot;] not exists.&quot;<\/span><\/div><div class=\"line\" id=\"LC46\"><span class=\"k\">else<\/span><span class=\"p\">:<\/span><\/div><div class=\"line\" id=\"LC47\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">print<\/span> <span class=\"s\">&quot;* nothing to uncompress.&quot;<\/span><\/div><div class=\"line\" id=\"LC48\">&nbsp;<\/div><\/pre><\/div>\n          \n        <\/div>\n\n        <div class=\"gist-meta\">\n          <a href=\"http://gist.github.com/raw/64664/f6a5229659435977fd395e2830fc1eeb552a6594/uncompress.py\" style=\"float:right;\">view raw<\/a>\n          <a href=\"http://gist.github.com/64664#file_uncompress.py\" style=\"float:right;margin-right:10px;color:#666\">uncompress.py<\/a>\n          <a href=\"http://gist.github.com/64664\">This Gist<\/a> brought to you by <a href=\"http://github.com\">GitHub<\/a>.\n        <\/div>\n      <\/div>\n    \n  \n<\/div>\n')
