403Webshell
Server IP : 107.13.46.68  /  Your IP : 216.73.216.232
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux mariOS 6.8.0-51-generic #52-Ubuntu SMP PREEMPT_DYNAMIC Thu Dec 5 13:09:44 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /proc/thread-self/root/bin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/thread-self/root/bin/gnome-terminal.wrapper
#! /usr/bin/perl -w

sub exists_in_path {
    my $command = shift;
    my @path = split ':', $ENV{PATH};

    foreach my $dir (@path) {
	if (-x "$dir/$command") {
	    return 1;
	}
    }

    return 0;
}

# GNOME Terminal now uses a dbus-activated service, so calling it would exit
# immediately, while we're supposed to mimic xterm behavior and so to wait
# until the terminal is explicitly closed, so always use the wait argument
push(@args, '--wait');

while ($opt = shift(@ARGV))
{
    if ($opt eq '-display')
    {
	$ENV{'DISPLAY'} = shift(@ARGV);
    }
    elsif ($opt eq '-name')
    {
	$arg = shift(@ARGV);
	push(@args, "--window-with-profile=$arg");
    }
    elsif ($opt eq '-n')
    {
	# Accept but ignore
	print STDERR "$0: to set an icon, please use -name <profile> and set a profile icon\n"
    }
    elsif ($opt eq '-T' || $opt eq '-title')
    {
	push(@args, '-t', shift(@ARGV));
    }
    elsif ($opt eq '-ls')
    {
	die "$0: Requested to be used as a login shell, but it's not supported\n"
    }
    elsif ($opt eq '+ls')
    {
	print STDERR "$0: gnome-terminal is always a non-login shell\n"
    }
    elsif ($opt eq '-geometry')
    {
	$arg = shift(@ARGV);
	push(@args, "--geometry=$arg");
    }
    elsif ($opt eq '-fn')
    {
	$arg = shift(@ARGV);
	push(@args, "--font=$arg");
    }
    elsif ($opt eq '-fg')
    {
	$arg = shift(@ARGV);
	push(@args, "--foreground=$arg");
    }
    elsif ($opt eq '-bg')
    {
	$arg = shift(@ARGV);
	push(@args, "--background=$arg");
    }
    elsif ($opt eq '-tn')
    {
	$arg = shift(@ARGV);
	push(@args, "--termname=$arg");
    }
    elsif ($opt eq '-e')
    {
	# Debian Policy says we would be free to translate this into:
	# push(@args, '--', @ARGV);
	# but let's be nice to people with local scripts that rely on
	# xterm -e having a special case for a singular argument.
	$arg = shift(@ARGV);
	if (@ARGV)
	{
	    push(@args, '--', $arg, @ARGV);
	    last;
	}
	else
	{
	    # Emulate xterm's special case for a single argument: if it
	    # isn't something we can execute directly, pass it to a shell
	    my $executable;

	    if ($arg =~ m{/})
	    {
		$executable = -x $arg;
	    }
	    else
	    {
		$executable = exists_in_path($arg);
	    }

	    if ($executable)
	    {
		push(@args, '--', $arg);
	    }
	    else
	    {
		# Historically, we used the now-deprecated gnome-terminal -e
		# for this case, which would split the command line up as if
		# by a shell, but didn't support shell constructs like "if"
		# and pipes. But this is easier, and matches what xterm does.
		push(@args, '--', 'sh', '-c', $arg);
	    }
	}
	last;
    }
    elsif ($opt eq '-h' || $opt eq '--help')
    {
	push(@args, '--help');
    }
}

exec('gnome-terminal',@args);

Youez - 2016 - github.com/yon3zu
LinuXploit