⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.177
Server IP:
50.6.168.112
Server:
Linux server-617809.webnetzimbabwe.com 5.14.0-570.25.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 9 04:57:09 EDT 2025 x86_64
Server Software:
Apache
PHP Version:
8.4.10
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
ctaacademy
/
www
/
vendor
/
laravel
/
prompts
/
src
/
View File Name :
Terminal.php
terminal = new SymfonyTerminal; } /** * Read a line from the terminal. */ public function read(): string { $input = fread(STDIN, 1024); return $input !== false ? $input : ''; } /** * Set the TTY mode. */ public function setTty(string $mode): void { $this->initialTtyMode ??= $this->exec('stty -g'); $this->exec("stty $mode"); } /** * Restore the initial TTY mode. */ public function restoreTty(): void { if (isset($this->initialTtyMode)) { $this->exec("stty {$this->initialTtyMode}"); $this->initialTtyMode = null; } } /** * Get the number of columns in the terminal. */ public function cols(): int { return $this->terminal->getWidth(); } /** * Get the number of lines in the terminal. */ public function lines(): int { return $this->terminal->getHeight(); } /** * (Re)initialize the terminal dimensions. */ public function initDimensions(): void { (new ReflectionClass($this->terminal)) ->getMethod('initDimensions') ->invoke($this->terminal); } /** * Exit the interactive session. */ public function exit(): void { exit(1); } /** * Execute the given command and return the output. */ protected function exec(string $command): string { $process = proc_open($command, [ 1 => ['pipe', 'w'], 2 => ['pipe', 'w'], ], $pipes); if (! $process) { throw new RuntimeException('Failed to create process.'); } $stdout = stream_get_contents($pipes[1]); $stderr = stream_get_contents($pipes[2]); $code = proc_close($process); if ($code !== 0 || $stdout === false) { throw new RuntimeException(trim($stderr ?: "Unknown error (code: $code)"), $code); } return $stdout; } }