Vad är filformatet COMMAND?
En .command-fil är ett skalskript i klartext som macOS Finder är konfigurerat att öppna direkt i Terminal.app och exekvera. Till innehållet är den identisk med ett skalskript - en sekvens av POSIX-skalkommandon med en valfri shebang-rad på första raden. Tillägget .command är det som skiljer beteendet åt: att dubbelklicka på en .command-fil startar Terminal.app och kör skriptet i ett nytt fönster, medan dubbelklickning på en .sh-fil öppnar den i en textredigerare.
Innan en .command-fil kan köras genom att dubbelklicka måste den ha exekveringsbehörighet inställd - använd chmod +x yourscript.command i Terminal. Filer som laddas ner från internet omfattas av macOS Gatekeeper; högerklicka och välj Öppna för att kringgå varningen vid första körning för osignerade skript.
Utan en shebang använder macOS som standard /bin/sh. Vanliga shebangs är:
#!/bin/bash- Bash-tolk#!/bin/zsh- Zsh (standard-skal i macOS sedan Catalina 10.15)#!/bin/sh- POSIX sh (mest portabel)
.command-filer används ofta för att leverera enkla macOS-verktyg, installerare och utvecklarverktyg som behöver en Terminal-session synlig för användaren. De öppnas i valfri textredigerare och är helt läsbara för människor.
Säkerhet & trygghet
RISK: MEDIUMEn .command-fil kan köra vilket skalkommando som helst på macOS - inklusive att radera filer, ladda ner skadlig kod eller ändra systeminställningar. Kör aldrig en .command-fil från en opålitlig källa utan att läsa dess innehåll först (högerklicka > Öppna med > Textredigerare). macOS Gatekeeper lägger till en karantänsflagga på filer som laddats ner från internet, vilket ger en varning vid första körningen - kringgå inte detta för okända skript.
Formatdetaljer
i ett nötskalProgram som öppnar COMMAND-filer
macvim script.command i Terminal. chmod +x script.command i Terminal först. Tekniska detaljer
djup specifikation| Filtyp | POSIX-skalskript i klartext |
| MIME-typ | text/x-shellscript |
| Kodning | UTF-8 (rekommenderas); ASCII är också vanligt |
| Radbrytningar | Unix-stil LF krävs; Windows CRLF-radbrytningar förstör skriptets exekvering |
| Magic bytes | Inga (klartext); shebang på rad 1 identifierar tolken |
| Exekveringsbehörighet | chmod +x krävs; utan detta startar inte Terminal vid dubbelklick i Finder |
| Standardtolk (utan shebang) | /bin/sh på macOS |
| Gatekeeper-karantän | Nedladdade .command-filer utlöser varning vid första körning; högerklicka > Öppna för att kringgå |
| Beteende vid dubbelklick i Finder | Startar Terminal.app och kör skriptet i ett nytt fönster |
| Funktionell skillnad från .sh | Endast filändelsen; skriptinnehållet är identiskt - .sh öppnas i textredigerare, .command exekveras i Terminal |
| Associerat OS | macOS (Finder-integration); skriptsyntaxen fungerar på alla POSIX-system |
| Typisk filstorlek | 100 byte - 100 KB |
| Släppt | ~2001 (Mac OS X 10.0 - Terminal.app era) |
| Öppen standard | Ja · royaltyfri |
| Specifikation | support.apple.com |
COMMAND-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om COMMAND-filer.
Vanliga frågor
Vad är en .command-fil på Mac?
Hur kör jag en .command-fil?
chmod +x ~/sökväg/till/script.command i Terminal först.