Hvordan kan jeg skifte automatisk grafikskift ved hjælp af terminal?

Jeg har en 15 “MacBook Pro fra maj 2019 med et Radeon Pro 555X 4 GB grafikkort. Jeg vil gerne ændre Automatic Graphics Switching indstilling med en terminalkommando.

Svar

Jeg foretog en googling, og jeg kender ikke et indbygget kommandolinjeværktøj eller et tredjeparts kommandolinjeværktøj , der kan skifte tilstanden for automatisk grafisk skift; dog kan det gøres fra kommandoen linje ved at bruge AppleScript til at skifte [√] Automatisk grafisk skift afkrydsningsfelt i Energisparer rude i Systemindstillinger .

I stedet for at finde en native kommandolinjeværktøj eller en tredjeparts kommandolinjeværktøj eller indtil et bedre svar r er sendt, vil det følgende give dig mulighed for at skifte det fra kommandolinjen i f.eks. Terminal .

  1. I Terminal , brug følgende sammensatte kommando til at oprette -fil og åbn det:

    touch togags; open togags 
  2. Kopier og indsæt eksemplet AppleScript kode , vist længere nede, i den åbnede togags fil .

  3. Gem og luk fil .

  4. Lav fil eksekverbar :

    chmod u+x togags 

Jeg brugte togags for: [tog]gle [a]utomatic [g]raphics [s]witching

Du kan nu bruge det fra biblioteket it ” s ved at bruge ./togags ellers ; det er dog bedst, hvis du placerer i et bibliotek , der er inden for din PATH udsagn . Derefter kan den bruges hvor som helst ved bare togags, (eller hvad du faktisk har navngivet eksekverbar ).

BEMÆRK: Dette kræver også, at Terminal tilgængelighedsrettigheder for at dette fungerer korrekt.

Kører kommandoen to gange for at vise dets output:

$ togags Automatic Graphics Switching is: OFF $ togags Automatic Graphics Switching is: ON $ 

Følgende eksempel AppleScript kode , blev testet og fungerer som kodet på macOS High Sierra . En mindre ændring kan være nødvendig for macOS Mojave ; dog er jeg ikke i stand til at teste på nuværende tidspunkt. Det samme gælder for ældre versioner af OS X / macOS.

Eksempel AppleScript kode :

#!/usr/bin/osascript if running of application "System Preferences" then try quit application "System Preferences" on error do shell script "killall "System Preferences"" end try end if repeat while running of application "System Preferences" is true delay 0.1 end repeat tell application "System Preferences" reveal pane id "com.apple.preference.energysaver" repeat until exists window "Energy Saver" delay 0.1 end repeat end tell tell application "System Events" to tell ¬ group 1 of window "Energy Saver" of application process "System Preferences" repeat until exists checkbox "Automatic graphics switching" delay 0.1 end repeat click checkbox "Automatic graphics switching" set cbAGS to (value of checkbox "Automatic graphics switching") as boolean end tell quit application "System Preferences" if cbAGS then return " Automatic Graphics Switching is: ON" else return " Automatic Graphics Switching is: OFF" end if 

Bemærk: eksempel AppleScript kode er netop det og andet, hvad der er allerede kodet, indeholder den ikke yderligere fejlhåndtering, når det er relevant. Det påhviler brugeren at tilføje enhver fejlhåndtering, som det er relevant, nødvendigt eller ønsket. Se på prøv udsagn og fejl udsagn i AppleScript Language Guide . Se også Arbejde med fejl .

Kommentarer

  • Jeg lagde det i /usr/local/bin -mappen, og det fungerer godt!
  • @Dev, spild ikke din tid på at forsøge at redigere mine svar på den måde, du ' har forsøgt at gøre dette, jeg afviser bare dine ændringer som denne hver gang!

Svar

Kommandoen sudo pmset -a gpuswitch n indstiller grafikomskiftningen, med følgende værdier for n:

  • 2 er integreret gpu både på kabel og batteri

  • 1 er kun dedikeret gpu med strøm forbundet; integreret GPU på batteristrøm

  • 0 er dedikeret GPU på både vekselstrøm og batteri

pmset -g viser dig den aktuelle konfiguration.

Kommentarer

  • For mig kører Catalina på en 2019 macbook pro 16 ", værdi 2 er AMD Radeon Pro på både kabel og batteri, 0 er Intel UHD-grafik på både kabel og batteri på en eller anden måde omvendt
  • Værdien 1 virker underlig, ikke sikker på hvad den laver, ser ud til at skifte mellem grafikkortet tilfældigt
  • Det ser ud til, at 1 er ægte automatisk grafikskift bestemt af operativsystemet tror jeg, men det følger ikke ' strømkilden. Jeg brugte support.apple.com/en-us/HT202053 til at finde ud af, hvilket grafikkort det bruger

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *