AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1829529
Accepted
M.Atkinson
M.Atkinson
Asked: 2024-02-09 21:37:51 +0800 CST2024-02-09 21:37:51 +0800 CST 2024-02-09 21:37:51 +0800 CST

Linux/Ubuntu/Orange Pi5 recupera abas abertas no Chromium (modo quiosque) via terminal - Powershell

  • 772

Ultimamente, tenho um problema em que estou desenvolvendo algum script do PowerShell para gerenciar e atualizar alguns monitores digitais. Por favor, veja abaixo meu trabalho em andamento (de forma alguma concluído).

Estou lutando para conseguir gerar através do terminal ou de qualquer meio (arquivo de texto automatizado ou via comando) guias ativas ou atualmente abertas no Chromium. A ideia que estou tentando alcançar é que se as guias atuais corresponderem ao que é necessário para ser aberto, pular uma atualização forçada (fechar e abrir o Chromium).

Eu tentei o BroTab, mas não consegui fazer isso funcionar, parece ser um problema com o Ubuntu e o Chromium. Alguém está ciente de algo que funcione para esse efeito?

Consegui trabalhar no histórico de guias ativas abertas, mas isso só é atualizado quando o navegador é aberto manualmente, em vez de aberto via terminal.

O script precisa de trabalho e registro de erros/notificações por e-mail quando há uma falha para que a tela possa ser investigada fisicamente. O primeiro passo é fazer isso funcionar... o que fica feio quando é atualizado a cada 30 minutos - prefiro que isso funcione apenas como um keep alive. Eu sei que requer trabalho e como tal aberto a recomendações sobre todo o código. Também farei uso de funções, mas também tive dificuldade para fazê-las funcionar como gostaria...

Aguardo suas sugestões.

##SCRIPT TO RERESH AND MANAGE PI BOXES FOR DISPLAYS##
$getr=$null;

##SET VARIABLES TO GET DATES AND FOR SPECIFIC TIMES IN REGARDS TO UPDATES
$Calendar = Get-Date
$updatestart = Get-Date -Hour 11 -Minute 55
$updatecutoff = Get-Date -Hour 12 -Minute 01

##SET VARIABLES FOR PI INSTRUCTIONS
$exitchrome = "killall -9 chromium-browser &>/dev/null; exit;" ##QUITS BROWSER AND EXITS SCRIPT - HAS TO BE DONE AS CANNOT BE RUN WITH FOLLWOING COMMANDS

Get-Content -Path "C:\temp\ip.txt" | Foreach-Object { ##LOOP THROUGH CONTENTS OF TEXT FILE - IP.TXT
$textfile = $_;

$pos = $textfile.IndexOf("|") ## LOOK FOR PIPE CHARECTER IN TEXT FILE     
$link_string = $textfile.Substring($pos+1) ##CONTENTS AFTER PIPE CHARECTER
$ip = $textfile.Substring(0, $pos) ##CONTENTS BEFORE PIPE CHARECTER
echo $ip

$chrome = "DISPLAY=:0 chromium-browser " + $link_string + " --kiosk --disable-session-crashed-bubble --disable-infobars &> /dev/null &" ##STARTS BROWSER IN KIOSK MODE ON DESKTOP WITH THE DEFINED URLS - ALL ON SCREEN MESSAGES DISABLED

##PLAY CODE##
    $i = 0
    $c = 0
    $w = 1
$wb_chk = "cat -e ~/.config/chromium/Default/Sessions/Tabs_* | sed -e 's/\^@/\n/g' -e '/_\/chrome/d' | grep -Po '(http|https)://\K.*' | sort -u" ##CHECK BROWSER FOR OPEN TABS ASSIGNED TO VARIABLE
$wb_chk_res = ssh orangepi@"$ip" -X "$wb_chk" | Out-String

foreach($url_array in -split $link_string)
{
    $url_array_pos = $url_array.IndexOf("/") ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
    $url_array = $url_array.Substring($url_array_pos+2) ##REMOVE CONTENTS AFTER CHARECTER RETRUN
    $i++

foreach($wbl_chk in -split $wb_chk_res)
{
    $w++
    if ($wbl_chk -eq $url_array) {
    $c++
    }
}
}

echo "$w websites were checked"
echo "There are $c live on the display"
echo "$c websites match the $i URLS in the config file"

##PLAY CODE##

If ($Calendar.Day -eq '28' -AND $Calendar.TimeOfDay -gt $updatestart.TimeOfDay -AND $Calendar.TimeOfDay -lt $updatecutoff.TimeOfDay) { ##IF END OF THE MONTH, RUN UPDATES
ssh -p 222 pi@"$ip" -X "sudo apt-get update; sudo apt-get upgrade -y; sudo reboot;"
Start-Sleep -s 60
}

##CEHCK DISPLAY RES - CANNOT TO GET TO WORK AS A FUCNTION...
$getr = ssh orangepi@"$ip" -X "xrandr -display :0.0;" | Out-String
$res_pos = $getr.IndexOf(",") ## LOOK FOR COMMA CHARECTER IN VARIABLE    
$getr = $getr.Substring($res_pos+2) ##REMOVE CONTENTS AFTER COMMA CHARECTER
$res_pos = $getr.IndexOf(",") ## LOOK FOR COMMA CHARECTER IN VARIABLE    
$getr = $getr.Substring(0, $res_pos) ##REMOVE CONTENTS BEFORE COMMA CHARECTER
$res_pos = $getr.IndexOf(" ") ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
$getr = $getr.Substring($res_pos+1) ##REMOVE CONTENTS AFTER CHARECTER RETRUN

$uptime = ssh orangepi@"$ip" -X "awk '{print $1}' /proc/uptime" | Out-String
$up_pos = $uptime.IndexOf(" ") ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
$uptime = $uptime.Substring(0,$up_pos) ##CONTENTS AFTER CHARECTER RETRUN
echo $uptime
echo $getr

if ($uptime -lt "1800.00" -Or $getr -ne "1920 x 1080") {
echo "Forcing Display Resolution";
ssh orangepi@"$ip" -X "sudo service lightdm restart;"
Start-Sleep -s 10;
ssh orangepi@"$ip" -X "$chrome";
Start-Sleep -s 10;
ssh orangepi@"$ip" -X "$exitchrome";
Start-Sleep -s 10;
$getr=$null;
}

$MATICS = select-string -pattern "xxx.my.leadermes.com" -InputObject $link_string ##LOOK FOR MATICS URL FOR SYNTHEIC MOUSE CLICKS
if ($MATICS -ne $null)
{
$getr = ssh orangepi@"$ip" -X "xrandr -display :0.0;" | Out-String
$res_pos = $getr.IndexOf(",") ## LOOK FOR COMMA CHARECTER IN VARIABLE    
$getr = $getr.Substring($res_pos+2) ##CONTENTS AFTER COMMA CHARECTER
$res_pos = $getr.IndexOf(",") ## LOOK FOR COMMA CHARECTER IN VARIABLE    
$getr = $getr.Substring(0, $res_pos) ##CONTENTS BEFORE COMMA CHARECTER
$res_pos = $getr.IndexOf(" ") ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
$getr = $getr.Substring($res_pos+1) ##CONTENTS AFTER CHARECTER RETRUN
echo "MATICS ON DISPLAY";
ssh orangepi@"$ip" -X "$exitchrome";
ssh orangepi@"$ip" -X "$chrome";

if ($getr -eq "1920 x 1080") {
echo "$getr live";
Start-Sleep -s 15
ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool key Return; exit;"
Start-Sleep -s 20
ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool key Tab Tab space mousemove 220 60 click 1; exit;"
Start-Sleep -s 20
ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool mousemove 1860 180 click 1 mousemove 1920 1080; exit;"
$getr=$null;
}
}

else
{
echo "MATICS IS NOT ON THIS DISPLAY";
ssh orangepi@"$ip" -X "$exitchrome";
ssh orangepi@"$ip" -X "$chrome";
}
}
linux
  • 1 1 respostas
  • 40 Views

1 respostas

  • Voted
  1. Best Answer
    M.Atkinson
    2024-02-22T22:42:10+08:002024-02-22T22:42:10+08:00

    Acho que tenho a resposta novamente para minha pergunta... Por mais que eu procure, não há como obter acesso rápido para abrir URLs no Chrome ou em outros navegadores da web... pois pode ser visto como um risco à segurança.

    Minha solução foi percorrer todas as janelas abertas (felizmente, apenas o Chrome, mas isso também pode ser descartado no código) e percorrer as guias para obtê-las uma de cada vez. O comando wmctrl -l me ajudou a conseguir isso.

    Ainda suspeito que possa haver uma maneira melhor, mas é esse o caminho que estamos seguindo agora.

    O código ainda está em andamento e se parece com o seguinte:

    Clear-Host
    ## SCRIPT TO RERESH AND MANAGE PI BOXES FOR DISPLAYS##
    $getr=$null;
    ## SET VARIABLES TO GET DATES AND FOR SPECIFIC TIMES IN REGARDS TO UPDATES
    $Calendar = Get-Date;
    $updatestart = Get-Date -Hour 11 -Minute 55;
    $updatecutoff = Get-Date -Hour 12 -Minute 01;
    ## SET VARIABLES FOR PI INSTRUCTIONS
    $exitchrome = "killall -9 chromium-browser &>/dev/null; exit;" ## QUITS BROWSER AND EXITS SCRIPT - HAS TO BE DONE AS CANNOT BE RUN WITH FOLLWOING COMMANDS
    Get-Content -Path "C:\Users\xxxx\Documents\DigitalDisplays\display-config.txt" | Foreach-Object { ## START OF LOOP THROUGH CONTENTS OF TEXT FILE - IP.TXT - THIS WILL LOOP THROUGH EVERY IP ADDRESS (SCREEN) ON FILE. 
        $urlcount = 0;
        $url_match_tc = 0;
        $url_match_tf = 0;
        $textfile = $_;
        $chrome = $null;
        $chk_b_string = $null;
        $chk_b_array_string = $null;
        $w=1;
        $no_keywordc = 0;
        $web_c = 0;
        $iic = 0;
        $ffc = 0;
        $browser_off = 0;
        $pos = $textfile.IndexOf("|"); ## LOOK FOR PIPE CHARECTER IN TEXT FILE     
        $link_string = $textfile.Substring($pos+1); ## CONTENTS AFTER PIPE CHARECTER
        $ip = $textfile.Substring(0, $pos) ## CONTENTS BEFORE PIPE CHARECTER
            echo "Checking Screen - $ip";
        $chrome = "DISPLAY=:0 chromium-browser " + $link_string + " --kiosk --disable-session-crashed-bubble --disable-infobars &> /dev/null &"; ##S TARTS BROWSER IN KIOSK MODE ON DESKTOP WITH THE DEFINED URLS - ALL ON SCREEN MESSAGES DISABLED
    ## UPDATES SECTION ##
            If ($Calendar.Day -eq '28' -AND $Calendar.TimeOfDay -gt $updatestart.TimeOfDay -AND $Calendar.TimeOfDay -lt $updatecutoff.TimeOfDay) { ## IF END OF THE MONTH, RUN UPDATES
                ssh -p 222 pi@"$ip" -X "sudo nohup apt-get update; sudo nohup apt-get upgrade -y; sudo nohup reboot;" ## NOHUP MEANS NO DISPLAY
                Start-Sleep -s 300;
            }
    ## END OF UPDATES SECTION##
    ## FIRST CHECK OF UPTIME AND SCREEN RESOLUTION##
    ## CHECK DISPLAY RES - CANNOT TO GET TO WORK AS A FUCNTION...
            $getr = ssh orangepi@"$ip" -X "xrandr -display :0.0;" | Out-String;
            $res_pos = $getr.IndexOf(","); ## LOOK FOR COMMA CHARECTER IN VARIABLE    
            $getr = $getr.Substring($res_pos+2); ## REMOVE CONTENTS AFTER COMMA CHARECTER
            $res_pos = $getr.IndexOf(","); ## LOOK FOR COMMA CHARECTER IN VARIABLE    
            $getr = $getr.Substring(0, $res_pos); ## REMOVE CONTENTS BEFORE COMMA CHARECTER
            $res_pos = $getr.IndexOf(" "); ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
            $getr = $getr.Substring($res_pos+1); ## REMOVE CONTENTS AFTER CHARECTER RETRUN
            $uptime = ssh orangepi@"$ip" -X "awk '{print $1}' /proc/uptime" | Out-String;
            $up_pos = $uptime.IndexOf(" "); ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
            $uptime = $uptime.Substring(0,$up_pos); ## CONTENTS AFTER CHARECTER RETRUN
            $uptime = [int]$uptime;
            $ts = [timespan]::fromseconds($uptime).tostring();
                echo "Uptime = $ts";
                echo "Screen Resolution = $getr";
            if ([int]$uptime -lt 1800.00 -Or $getr -ne "1920 x 1080") {##CHECK SCREEN RESOLUTION AND UPTIME
                    echo "Resetting Display Resolution as just started up or not Default Resolution";
                ##ssh orangepi@"$ip" -X "sudo service lightdm restart;"
                ##Start-Sleep -s 10;
                ##ssh orangepi@"$ip" -X "$chrome";
                ##Start-Sleep -s 10;
                ##ssh orangepi@"$ip" -X "$exitchrome";
                ##Start-Sleep -s 10;
                $getr=$null;
            }
    ## ***END*** FIRST CHECK OF UPTIME AND SCREEN RESOLUTION ***END*** ##
    ## BROWSER CHECK SECTION ##
            $chrome_check_open = ssh orangepi@"$ip" -X "DISPLAY=:0 wmctrl -l" | Out-String;
            $chrome_check = $chrome_check_open.Contains("Chromium");
            if ($chrome_check -eq 0) {
                $host.UI.RawUI.ForegroundColor = "Red";
                    echo "BROWSER IS NOT OPEN!";
                $browser_off = 1;
                $host.UI.RawUI.ForegroundColor = "White";
            } else {
                    echo "BROWSER CHECKING RUNNING NOW";
    ## CODE TO LOOK THROUGH OPEN TABS - LOOPS THROUGH TABS DEPENINDING ON HOW MANY URL's IN CONFIG FILE
            foreach($url_array in -split $link_string) { ## Counts the URL's in the IP/Config text file
                $urlcount++;
            }
            foreach($url2_array in -split $link_string) {
                if ($w -lt $urlcount) { ## SIMPLE COUNT TO CHECK AGAINST SITES IN THE CONFIG TXT FILE - IF LESS THAN WHAT IS THE CONFIG FILE DO BELOW AND ON FINAL ONE DO FINAL CHECK
                    $chk_b_open = ssh orangepi@"$ip" -X "DISPLAY=:0 wmctrl -l" | Out-String; ## THIS GET THE OPEN WINDOW HEADERS - THE LAST ONE IS CHROMIUM
                    $chk_b_open = ([regex]::Matches($chk_b_open,'.','RightToLeft') | ForEach {$_.value}) -join '' | Out-String; ##EASIEST TO FLIP THE STRING BACK TO FRONT
                    $chk_b_pos = $chk_b_open.IndexOf("0"); ## LOOK FOR ZERO CHARECTER IN VARIABLE - BEST IDENTIFIABLE CHARECTER IN THIS SET    
                    $chk_b_open = $chk_b_open.Substring(0,$chk_b_pos) ## CONTENTS BEFORE ZERO CHARECTER
                    $chk_b_open = ([regex]::Matches($chk_b_open,'.','RightToLeft') | ForEach {$_.value}) -join '' | Out-String; ##RETURN STRING TO PROPER ORIENTATION
                    $chk_b_string = $chk_b_open.substring(1); ## TIDYING STRING TO RID OF FIRST BLANK CHARECTER
                    $chk_b_string = $chk_b_string.replace(' ','-'); ## THERE ARE BLANK SPACES IN THE STRING SO WE REPLACE THOSE WITH "-"
                    $chk_b_array_string = "$chk_b_array_string $chk_b_string"; ## BUILDS ARRAY OF ALL OPEN TABS TO CHECK AGAINST LATER
                    ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool keydown ctrl key 0xff09 keyup ctrl"; ## ROTATES TAB TO NEXT
                    $w++; ## INCREASES BY ONE ON PROGRESS OF PREDICTED OPEN TABS
                    Start-Sleep -s 0.5;
                } else { ## SAME AS ABOVE BUT THE FINAL CHECK - THIS IS DEPICTED BY THE NO INCREASE VARIABLE $W AND THE SLEEP DURATION OF HALF A SECOND
                    $chk_b_open = ssh orangepi@"$ip" -X "DISPLAY=:0 wmctrl -l" | Out-String;
                    $chk_b_open = ([regex]::Matches($chk_b_open,'.','RightToLeft') | ForEach {$_.value}) -join '' | Out-String;
                    $chk_b_pos = $chk_b_open.IndexOf("0"); ## LOOK FOR ZERO CHARECTER IN VARIABLE - BEST IDENTIFIABLE CHARECTER IN THIS SET   
                    $chk_b_open = $chk_b_open.Substring(0,$chk_b_pos); ## CONTENTS BEFORE ZERO CHARECTER
                    $chk_b_open = ([regex]::Matches($chk_b_open,'.','RightToLeft') | ForEach {$_.value}) -join '' | Out-String;
                    $chk_b_string = $chk_b_open.substring(1);
                    $chk_b_string = $chk_b_string.replace(' ','-');
                    $chk_b_array_string = "$chk_b_array_string $chk_b_string";
                    ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool keydown ctrl key 0xff09 keyup ctrl";
                }
            }
    ## THIS SHOULD LEAVE US NOW WITH A FULL LIST ARRAY OF ALL OPEN TABS THAT WE CAN CHCK AGAINST
    ## THE ABOVE COULD BE SIMPLIFIED WITH THE USE OF FUNCTIONS IN THE FUTURE TO REDUCE CODE LENGTH
    ## ***END*** CODE TO LOOK THROUGH OPEN TABS - LOOPS THROUGH TABS DEPENINDING ON HOW MANY URL's IN CONFIG FILE ***END*** ##
    ## CHECK CONFIG FILE, AGAINST OPEN TABS USING THE KEYWORD FROM A URL DIRECTORY LIST ##
            foreach($url3_array in -split $link_string) { ## STARTS A NEW ARRAY OF PULLING URLS FROM THE CONFIG FILE
                $keyword = $null;## RESETS THE KEYWORD VARIABLE AT THE START OF THE NEXT WEBSITE IN THE CONFIG
                $no_keyword = 0;
                $ii = 0;
                $ff = 0;
                $web_c++;
                Get-Content -Path "C:\Users\xxxx\Documents\DigitalDisplays\header-ident.txt" | Foreach-Object { ## START ARRAY FROM THE HEADER IDENTITY DIRECTORY
    ## THIS IS ANNOYING AS YOU NEED A STATIC IDENTIFIER FOR EACH WEBSITE AND IF ONE IS NOT LISTED IT WILL WORK AS I HAVE PROGRAMMED TO DO SO BUT WILL ALWAYS REFRESH WHICH IN TURN WILL TAKE LONGER
                    $headerfile = $_;
                    $ident_match = $headerfile.Contains($url3_array); ## THIS MATCHES THE URL BEING CHECKED AGAINST THE KEYWORD LIST (ALSO LISTS URL)
                    if ($ident_match -eq 1) {
                        $chk_ident_pos = $headerfile.IndexOf("|"); ## LOOK FOR PIPE CHARECTER IN VARIABLE
                        $keyword = $headerfile.Substring($chk_ident_pos+1); ## CONTENTS BEFORE PIPE CHARECTER - THIS IDENTIFIES THE KEYWORD WE WILL NBEED TO USE FOR THIS WEBSITE
                    }
                }
                if (!$keyword) { ## IF KEYWORD IS EMPTY OR NO MATCH IS RETURNED - SKIP AND INCREASE VARIABLE TO IDENTIFY THESE
                    $ff++;
                    $no_keyword++;
                    $host.UI.RawUI.ForegroundColor = "Red"; ## TURNS TEXT RED BECUASE THERE IS NO KEYWORD
                        echo "  There is no Keyword listed for $url3_array, please add one - the Screen will refresh until this is added";
                    $host.UI.RawUI.ForegroundColor = "White"; ## RETURNS FONT BACK
                } else {
                    $host.UI.RawUI.ForegroundColor = "Green"; ## TURNS TEXT GREEN AS KEYWORD
                    $host.UI.RawUI.ForegroundColor = "White"; ## RETURNS FONT BACK
                    foreach($c_url_array in -split $chk_b_array_string) { ## FINAL ARRAY TO GET OPEN WINDOW ARRAY SET IN THE SECTION CODE ABOVE (CODE TO LOOK THROUGH OPEN TABS - LOOPS THROUGH TABS DEPENINDING ON HOW MANY URL's IN CONFIG FILE)
                        $keyword_match = $c_url_array.Contains($keyword); ## MATCHES THE KEYWORD
                        if ($keyword_match -eq 1) { ## IF MATCH IS FOUND - INCREASE COUNT $ii AND IF ALREADY EXISISTS (DUPLICATES) FORCE THAT VALUE TO BE 1 - THIS MUST REMAIN 1 AS THERE WAS A MATCH
                            $ii++;
                            if ($ii -gt 0) {
                                $ii = 1;
                            }
                        } else {
                            $ff++; ## IF THERE WAS NOT A MATCH INCREASE THE $ff VARIABLE BY ONE AND AGAIN FORCE THAT ONLY TO BE 1
                            if ($ff -gt 0) {
                                $ff = 1;
                            }
                        }
                    }
                }
                if ($ii -gt 0) { ## IF THERE WAS A MATCH AFTER ALL CHECK HAVE BEEN DONE AGAINST OPEN WINDOWS THEN WE NEED TO RESET $ff  VARILABLE TO 0 AS THIS WAS NO IMPORTANT
                    $ff = 0;
                }
                $iic = $iic + $ii; ## ADD ALL SUCCESSFUL MATCHES TOGETHER
                $ffc = $ffc + $ff; ## ADD ALL SITES NOT LIVE TOGETHER
                $no_keywordc = $no_keywordc + $no_keyword; ## COUNT NO KEYWORDS TOGETHER
            }
                echo "";
                echo "  There are $urlcount sites in the Config File";
                echo "  There are $iic sites that Match Live Tabs";
                echo "  There are $ffc sites in the config file that don't match Live Tabs";
                echo "  There are $no_keywordc site(s) that don't have a Keyword";
    ## ***END*** CHECK CONFIG FILE, AGAINST OPEN TABS USING THE KEYWORD FROM A URL DIRECTORY LIST ***END*** ##
            }
    ## ***END*** WEB BROWSER CHECKING SECTION AND WEBSITES OPEN ***END***##
            if ($iic -lt $urlcount -or $iic -gt $urlcount -or $no_keywordc -gt 0 -or $browser_off -eq 1) { ## IF LIVE MATCHES IS LESS OR GREATER THAN CONFIG URL's, NO KEYWORD OR THE BROWSER WAS OFF - RESET THE DISPLAY
                    echo "";
                    echo "Refreshing screen as there was a website discrepancy, no keyword, the browser was closed or the device was recently powered on";
                    echo "";
                $MATICS = select-string -pattern "xxx.my.leadermes.com" -InputObject $link_string; ## LOOK FOR MATICS URL FOR SYNTHEIC MOUSE CLICKS
                if ($MATICS -ne $null) {
                    ##$getr = ssh orangepi@"$ip" -X "xrandr -display :0.0;" | Out-String;
                    ##$res_pos = $getr.IndexOf(","); ## LOOK FOR COMMA CHARECTER IN VARIABLE    
                    ##$getr = $getr.Substring($res_pos+2); ## CONTENTS AFTER COMMA CHARECTER
                    ##$res_pos = $getr.IndexOf(","); ## LOOK FOR COMMA CHARECTER IN VARIABLE    
                    ##$getr = $getr.Substring(0, $res_pos); ## CONTENTS BEFORE COMMA CHARECTER
                    ##$res_pos = $getr.IndexOf(" "); ## LOOK FOR CHARECTER RETRUN IN VARIABLE    
                    ##$getr = $getr.Substring($res_pos+1); ## CONTENTS AFTER CHARECTER RETRUN
                    ##ssh orangepi@"$ip" -X "$exitchrome";
                    ##ssh orangepi@"$ip" -X "$chrome";
                    if ($getr -eq "1920 x 1080") { ## THIS ALLOW US TO DO DIFFERENT SCREEN RESOLUTIONS IN THE FUTURE IF WE WANT TO
                        ##Start-Sleep -s 25;
                        ##ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool key Return; exit;";
                        ##Start-Sleep -s 20;
                        ##ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool key Tab Tab space mousemove 220 60 click 1; exit;";
                        ##Start-Sleep -s 20;
                        ##ssh orangepi@"$ip" -X "DISPLAY=:0 xdotool mousemove 1860 180 click 1 mousemove 1920 1080; exit;";
                        $getr=$null;
                    }
                } else {
                    ##ssh orangepi@"$ip" -X "$exitchrome";
                    ##ssh orangepi@"$ip" -X "$chrome";
                }
    
            } else {
            echo "";
            echo "No refresh required";
            echo "";
            }
    }
    ## END OF SCRIPT ##
    
    • 0

relate perguntas

  • Como eu faria minha máquina Linux parecer que está executando o Windows?

  • Existe um equivalente a cd - para cp ou mv?

  • execute o contêiner do docker como root

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve