Ik heb een 15 “MacBook Pro vanaf mei 2019 met een Radeon Pro 555X 4 GB grafische kaart. Ik wil de instelling met een terminalcommando.
Antwoord
Ik heb wat gegoogeld, en ik weet het niet een native opdrachtregelhulpprogramma , of een opdrachtregelhulpprogramma van een derde partij, dat de status van automatisch wisselen tussen grafische afbeeldingen kan wijzigen; het kan echter worden gedaan met de opdracht regel door AppleScript te gebruiken om de [√] Automatische grafische omschakeling selectievakje in het Energiebesparing paneel in Systeemvoorkeuren .
In plaats van een native opdrachtregelprogramma , of een opdrachtregelprogramma van derden, of tot een beter antwoord r is geplaatst, staat het volgende je toe om het te schakelen vanaf de command line in bijv. Terminal .
-
In Terminal , gebruik de volgende samengestelde opdracht om het -bestand en open het:
touch togags; open togags
-
Kopieer en plak het voorbeeld AppleScript code , hieronder weergegeven, in het geopende
togags
bestand . -
Bewaar en sluit het bestand .
-
Maak het bestand executable :
chmod u+x togags
Ik gebruikte togags
voor: [tog]gle [a]utomatic [g]raphics [s]witching
Je kunt het nu gebruiken vanuit de directory it ” s door ./togags
te gebruiken, anders ; het is echter het beste als u het in een directory plaatst die zich binnen uw PATH
statement bevindt. Vervolgens kan het vanaf elke locatie worden gebruikt door togags
, (of hoe u het uitvoerbare bestand ook noemt).
OPMERKING: Dit vereist ook Terminal toegankelijkheidsrechten om dit correct te laten werken.
Het commando twee keer uitvoeren om de output te tonen:
$ togags Automatic Graphics Switching is: OFF $ togags Automatic Graphics Switching is: ON $
Het volgende voorbeeld AppleScript code , is getest en werkt zoals gecodeerd op macOS High Sierra . Een kleine wijziging kan nodig zijn voor macOS Mojave ; ik kan momenteel echter niet testen. Hetzelfde geldt voor oudere versies van OS X / macOS.
Voorbeeld AppleScript code :
#!/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
Opmerking: de voorbeeld AppleScript code is precies dat en anders dan wat “s al gecodeerd, bevat het geen aanvullende foutafhandeling zoals nodig kan zijn. Het is aan de gebruiker om eventuele foutafhandeling toe te voegen die passend, nodig of gewenst is. Bekijk de probeer en fout instructie in de AppleScript-taalgids . Zie ook Werken met fouten .
Reacties
Answer
Het commando sudo pmset -a gpuswitch n
zal de grafische omschakeling instellen, met de volgende waarden voor n:
-
2 is geïntegreerde gpu zowel op kabel als batterij
-
1 is alleen toegewijde gpu met stroom verbonden; geïntegreerde gpu op batterijvermogen
-
0 is toegewijde gpu op zowel ac als batterij
pmset -g
toont u de huidige configuratie.
Reacties
- Voor mij is Catalina draaien op een 2019 macbook pro 16 ", waarde 2 is AMD Radeon Pro op zowel kabel als batterij, 0 is Intel UHD Graphics op zowel kabel als batterij op de een of andere manier omgekeerd
- De waarde 1 doet raar, niet zeker wat het doet, lijkt willekeurig tussen de grafische kaart te wisselen
- Het lijkt erop dat 1 echte automatische grafische omschakeling is, bepaald door het besturingssysteem, denk ik, maar het volgt niet ' de stroombron. Ik heb support.apple.com/en-us/HT202053 gebruikt om erachter te komen welke grafische kaart het gebruikt
/usr/local/bin
directory geplaatst en het werkt geweldig!