Minulla on 15 ”tuumainen MacBook Pro toukokuusta 2019 alkaen Radeon Pro 555X 4 Gt: n näytönohjaimella. Haluan vaihtaa Automatic Graphics Switching
-asetus päätekomennolla.
Vastaa
Googlen ja en tiedä natiivi komentorivin apuohjelma tai kolmannen osapuolen komentorivin apuohjelma , joka voi vaihtaa grafiikan automaattisen vaihdon tilan; se voidaan kuitenkin tehdä -komennosta line käyttämällä AppleScript -näppäintä vaihtaaksesi [√] Automaattinen grafiikan vaihto valintaruutu energiansäästössä pane kohdassa Järjestelmäasetukset .
natiivi komentorivin apuohjelma tai kolmannen osapuolen komentorivin apuohjelma tai kunnes parempi vastaus r on lähetetty, seuraavan avulla voit vaihtaa sen komentoriviltä esim. Pääte .
-
Kohdassa Pääte , luo seuraava yhdistekomento -tiedoston ja avaa se:
touch togags; open togags
-
Kopioi ja liitä esimerkki AppleScript koodi , joka on esitetty alla, avattuun
togags
-tiedosto . -
Tallenna ja sulje tiedosto .
-
Luo -tiedosto suoritettava :
chmod u+x togags
Käytin togags
kohteelle: [tog]gle [a]utomatic [g]raphics [s]witching
Voit nyt käyttää sitä hakemistosta se ” s käyttämällä ./togags
muuten ; On kuitenkin parasta, jos sijoitat hakemistoon , joka on PATH
lausekkeessasi . Sitten sitä voi käyttää mistä tahansa vain togags
(tai mitä tahansa itse nimität suoritettavaksi ).
HUOMAUTUS: Tämä edellyttää myös -päätteen antamista helppokäyttöoikeudet , jotta tämä toimisi oikein.
Suorita komento kahdesti näyttämään sen tulos:
$ togags Automatic Graphics Switching is: OFF $ togags Automatic Graphics Switching is: ON $
Seuraava esimerkki AppleScript code , testattiin ja toimii minulla koodattuna macOS High Sierra . Pieni muutos saattaa olla tarpeen macOS Mojavelle ; En kuitenkaan pysty testaamaan tällä hetkellä. Sama koskee vanhempia OS X / macOS -versioita.
Esimerkki 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
Huomaa: esimerkki AppleScript code on juuri sitä ja muuta mitä sitten se on jo koodattu, se ei sisällä ylimääräisiä virheiden käsittelyä, mikä saattaa olla tarkoituksenmukaista. Käyttäjän on lisättävä virheiden käsittely tarvittaessa, tarpeen mukaan tai halutulla tavalla. Katso kokeile lausetta ja -virhe lause AppleScript-kielioppaassa . Katso myös Virheiden käsitteleminen .
Kommentit
vastaus
Komento sudo pmset -a gpuswitch n
asettaa grafiikan vaihtamisen, seuraavilla n: n arvoilla:
-
2 on integroitu gpu sekä kaapelissa että akussa
-
1 on omistettu vain virtalähteelle kytketty; integroitu GPU akkuvirralla
-
0 on omistettu GPU sekä verkkovirralla että akulla
pmset -g
näyttää nykyisen kokoonpanon.
kommentit
- Minulle Catalinan suorittaminen vuoden 2019 macbook pro 16: lla ", arvo 2 on AMD Radeon Pro sekä kaapelilla että akulla, 0 on Intel UHD -grafiikka sekä kaapelilla että akulla jotenkin päinvastoin
- Arvo 1 toimii oudosti, ei ole varma mitä se tekee, näyttää vaihtelevan näytönohjaimen välillä
- Näyttää siltä, että 1 on tosi automaattinen grafiikan vaihto, jonka mielestäni käyttöjärjestelmä on määritellyt, mutta se ei noudata virtalähdettä. Käytin support.apple.com/en-us/HT202053 selvittääkseen, mitä näytönohjainta se käyttää
/usr/local/bin
ja se toimii hyvin!