From 03d827e2fbc409ef97829f25b8eeca5204f81a3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= Date: Mon, 12 Jul 2021 13:24:49 +0200 Subject: Re-organize files --- re! | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) delete mode 100755 re! (limited to 're!') diff --git a/re! b/re! deleted file mode 100755 index 1314ae9..0000000 --- a/re! +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/env perl - -# re! -- rewrite shebangs - -use strict; - -my $test = 0; -sub usage { die "usage: $0 [-n] file ...\n" } - -if (@ARGV and $ARGV[0] eq '-n') { - $test = 1; - shift @ARGV; -} -usage if not @ARGV; - -for my $file (@ARGV) { - open my $o, '<', $file or die "could not open $file: $!\n"; - - # parse shebang - my $shebang = <$o>; - $shebang =~ /^#!/ or die "no shebang: $file\n"; - $shebang =~ /^#!\s*(\S+)\s*(.*)/; - my ($old, $args) = ($1, $2); - - # validate path - next if -x $old; - - # get new path - (my $basename = $old) =~ s,.*/,,; - chomp(my $new = `which $basename`); - $new or die "could not find $basename\n"; - next if $old eq $new; - - # print results if test - if ($test) { - print "$file: $old -> $new\n"; - next; - } - - # write new shebang - open my $n, '>', "$file.tmp" or die "could not open $file.tmp: $!\n"; - print $n "#!$new $args\n"; - print $n $_ while <$o>; - - close for ($o, $n); - system('mv', "$file.tmp", $file) == 0 - or die "could not overwrite $file\n"; -} -- cgit v1.2.3