⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.30
Server IP:
45.79.8.107
Server:
Linux localhost 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.2-1ubuntu2.21
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
lib
/
usrmerge
/
View File Name :
convert-etc-shells
#!/usr/bin/perl # vim: shiftwidth=4 tabstop=4 # # Copyright 2016 by Marco d'Itri
# # 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 2 of the License, or # (at your option) any later version. use lib "/usr/lib/usrmerge/lib"; use warnings; use strict; use autodie; use v5.16; convert('/etc/shells'); exit; sub convert { my ($file) = @_; my (@shells, @nonusr_shells, %seen_in_usr); open(my $in, '<', $file); while (<$in>) { chomp; push(@shells, $_); $seen_in_usr{$1} = 1 if m#^/usr(/s?bin/.+)#; push(@nonusr_shells, $_) if m#^/s?bin/#; } close $in; my @new_shells = # and add them to the list map { "/usr$_" } # add /usr to their path grep { not $seen_in_usr{$_} } # if they do not already exist in /usr @nonusr_shells; # for each shell not in /usr return unless @new_shells; open(my $out, '>', "$file.tmp"); say $out $_ foreach @shells, @new_shells; close $out; rename("$file.tmp", $file); }