summaryrefslogtreecommitdiff
path: root/fix-shebang
diff options
context:
space:
mode:
Diffstat (limited to 'fix-shebang')
-rwxr-xr-xfix-shebang54
1 files changed, 0 insertions, 54 deletions
diff --git a/fix-shebang b/fix-shebang
deleted file mode 100755
index 8478cd2..0000000
--- a/fix-shebang
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/python
-# Copyright 2011 Lars Wirzenius
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-
-import cliapp
-import os
-import tempfile
-
-
-class FixShebang(cliapp.Application):
-
- def add_settings(self):
- self.settings.string(['shebang'], 'interpreter path and args')
-
- def process_input(self, arg):
- name = self.create_tempfile_for(arg)
- temp = open(name, 'w')
- shebang = self.settings['shebang']
- if not shebang:
- raise Exception('You must specify an interpreter with --shebang')
- if not shebang.startswith('#!'):
- shebang = '#!%s' % shebang
- temp.write('%s\n' % shebang)
- f = open(arg)
- line1 = f.readline()
- if line1 and not line1.startswith('#!'):
- temp.write(line1)
- for line in f:
- temp.write(line)
- f.close()
- temp.close()
- os.rename(name, arg)
-
- def create_tempfile_for(self, filename):
- fd, name = tempfile.mkstemp(dir=os.path.dirname(filename))
- os.close(fd)
- return name
-
-
-if __name__ == '__main__':
- FixShebang().run()