Kuinka luoda yleinen (komentosarja) tiedosto Macille useiden Terminal-komentojen perusteella

Minulla on useita Terminal-komentoja, joita käytän vianmääritystarkoituksiin kirjoittamalla ne yksitellen pääteikkunaan.

Nämä komennot edellyttävät käyttäjän salasanan syöttämistä.

Etsin tapaa luoda universaali (komentosarja) tiedosto näiden komentojen avulla. Haluan pystyä suorittamaan tiedoston Macissa vain kaksoisnapsauttamalla sitä tai vetämällä tiedoston Terminal-kuvakkeen päälle.

En ole koskaan aikaisemmin tehnyt mitään tällaista. Onko olemassa tapaa luoda tällainen komentosarja? Ole hyvä ja neuvoo.

Kommentit

  • Tarkoitatko pyytää, että haluat suorittaa komentosarjan ilman että käyttäjä syöttää heidän salasanansa?
  • @Allan Haluan suorittaa yhden tiedoston useiden komentojen sijaan. Sen suorittaminen ilman, että käyttäjää syötetään salasanaa ainakin kerran, olisi hyvä, mutta todennäköisesti mahdotonta, jos en ' ole väärässä.
  • Että ' ovat ehdottomasti mahdollisia, ellei sinun tarvitse tehdä jotain, mikä vaatii järjestelmänvalvojan – katso vastaukseni alla.
  • Ehkä et tarkalleen mitä sinä ' jälkeen, mutta löysin sen erittäin tehokkaaksi. Voit käyttää alias esim. alias ns="sudo netstat -tulpn". Voit jopa laittaa nämä @reboot -riveihin Crontabiin, jos haluat niitä jokaiseen käynnistykseen. Nyt voin vain kirjoittaa ns. Autuus.

Vastaa

Lyhyt vastaus

A .command -skriptin pitäisi tehdä temppu


Vaiheittain

  1. Avaa TextEdit ja luo uusi tiedosto
  2. Muunna napsauttamalla Muoto> Luo pelkkä teksti
  3. Lisää komennot, yksi kullekin riville. Voit esimerkiksi tehdä:
    #! /bin/bash cd ~/Desktop mkdir myCoolFolder cd myCoolFolder

  4. Suorita chmod u+x ~/Desktop/myCommandScript.command pääte, jossa ~/Desktop/myCommandScript.command on polku komentosarjaasi. Tämä antaa päätelaitteelle luvan suorittaa tiedosto.

  5. Olet valmis! Suorita kaksoisnapsauttamalla tiedostoa. Suorita myös päätelaitteen kuvakkeen vetäminen.

Huomautuksia:

  • Jos haluat tehdä jotain, joka vaatii pääkäyttäjän oikeudet, voit lisätä komennon etuliitteeseen sudo. Kun komentosarja suoritetaan, sinun on annettava salasanasi (ja oltava järjestelmänvalvoja)
  • Jos loppukäyttäjä ei ole järjestelmänvalvoja, mutta sinun on tehtävä jotain, mikä vaatii pääkäyttäjän oikeuksia, voit käyttää su someAdminName, joka suorittaa komennon nimellä someAdminName (tarvitset hänen salasanansa).

Näet myös täällä pinon ylivuototiedostossa saadaksesi hieman lisätietoja.

Kommentit

  • Onko mahdollista tehdä komentotiedosto kirjautumatta ulos? Haluan saada komentotiedoston, joka avaa päätelaitteen ennalta määritetyllä polun muuttujalla.

Answer

Komentosarja on vain sarja komentoja, joten voit laittaa sen bash-komentosarjaan.

#!/bin/bash command 1 command 2 command 3 

Nyt kaikki riippuu niiden komentotyypeistä ja siitä, onko ne ne edellyttävät käyttäjän toimia.

Jos kuitenkin saat esimerkiksi diagnostiikkatietoja, sinulla voi olla komentosarja, joka tekee

#!/bin/bash # Get SMART status of main drive diskutil info disk0 | grep -i smart # Get the model of the machine in question system_profiler SPHardwareDataType | grep -i Identifier 

Nämä ovat vain esimerkkejä . Muista, että kaikki tuotettu tuotos lähetetään konsoliin (näyttö). Voit kuitenkin ohjata lähdön tiedostoon liittämällä >> /path/to/outputfile.txt jokaisen komennon loppuun, jotta sinulla on tiedosto, jonka voit jäsentää, kun tiedosto on suoritettu.

Voit nimetä tiedoston diagnostics.sh ja sijoittaa sen mihin haluat. Varmista vain, että teet sen suoritettavaksi antamalla komennon chmod +x diagnostics.sh ja suorittamalla sen ./diagnostics.sh tai kaksoisnapsauta sitä suorittaaksesi sen, jos se on tallennettu työpöydällesi .

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *