Jeg jobber mye på kommandolinjen i en terminal og vil starte en teksteditor på en bestemt fil. Jeg er fra Linux Land og bruker vanligvis kwrite eller gedit fra et bash-skall. Prøver å finne Mac-ekvivalenten, som et gjetning, prøvde
user> textedit somefile.txt
og
user> texteditor somefile.txt
og
user> TextEditor somefile.txt
og andre varianter. Jeg ser ikke ut til å finne riktig navn på teksteditor-appen. (Nei, vi er ikke etter min smak.) Merkelig nok, fyren i en Apple-butikk visste ikke dette.
Kommentarer
- Både Nathan og mipadi gir svar, men jeg tror de ‘ bare er delvise svar , så jeg la til en. Jeg ‘ er ikke sikker på om det hadde vært bedre å kombinere svarene deres på en eller annen måte, og i så fall hvordan å ha gjort det.
- @Viktor det er generelt ikke ‘ t godt å legge ut ting som folk allerede har sagt, og eksakte duplikater fjernes. Siden du hadde noe å legge til, ville gode måter å gå være et svar som sier » I tillegg til Nathan og mipadi ‘ s teknikker .. . «, eller kommenterer svarene med tilleggene dine. Det du ‘ har gjort her er greit, men ikke akkurat en ‘ beste praksis ‘ . Takk for at du spurte; nå vet du for fremtiden :-).
Svar
Her er noen mulige svar, alle bruker «åpen» kommandolinjeverktøy.
Alternativet -a betyr «åpne filargumentet med den navngitte applikasjonen «:
open -a TextEdit file.txt
-e alternativet betyr «åpne filargumentet med TextEdit-applikasjonen»:
open -e file.txt
-t alternativet betyr «åpne filen med standardprogrammet for redigering av tekstfiler, som bestemt via LaunchServices». Som standard vil dette være /Applications/TextEdit.app; det er imidlertid mulig for denne innstillingen å bli overstyrt:
open -t file.txt
Til slutt, alle filer som er i «teksten «type åpnes av applikasjonen som er bundet til teksttypen hvis du bare sier open file.txt
. Du kan bruke kommandoen «file» for å avsløre hva operativsystemet mener filtypen er: file file.txt
. Så hvis du for eksempel omdøpte «file.txt» til bare «textfile», ville open textfile
fortsatt åpne den i standard tekstfilredigeringsprogram, så lenge file textfile
trodde fortsatt at «textfile» egentlig var en tekstfil.
En kort «help» -fil på open
ved å kjøre
open --help
Eller du kan lese hele håndboken med
man open
Kommentarer
- Jeg legger dette inn i .bash_profile: » alias o = ‘ åpen -a Sublime \ Text \ 2 ‘ » og så kan jeg ganske enkelt skrive ved ledeteksten: » o text.txt «. Det ‘ er veldig lett på fingrene;)
-
open
er den eneste ‘ høyre ‘ måte å gjøre dette på.
Svar
Standard teksteditor er TextEdit. Du kan åpne en tekstfil der ved å bruke åpen -a:
$ open -a TextEdit hi.txt
Hvis du vil bruke en annen app, bare legg den inn i navnet slik:
$ open -a Coda index.html
Kommentarer
- Dette fungerte for meg (OSX Mojave) med både TextEdit og Visual Studio Code. Takk!
Svar
Det er to måter:
Hvis standard teksteditor er TextEdit, kan du bare bruke
open -t file.txt
for å åpne den TextEditor.
Hvis standard teksteditor ikke er TextEdit, og du vil åpne den spesifikt i TextEdit, kan du bruke
/Applications/TextEdit.app/Contents/MacOS/TextEdit file.txt
En av disse kan selvfølgelig gjøres til et alias i shell-konfigurasjonsfilen.
Kommentarer
- Legg merke til at jeg ‘ Jeg er ikke sikker på at konvensjonen om å overføre filnavnargumentet direkte til applikasjonen ‘ navn på com mandlinje fungerer kanskje ikke for alle applikasjoner. Bare applikasjoner som er bygget for å godta filnavn på kommandolinjen som gyldige argumenter for å åpne, fungerer på denne måten.Jeg tror at den mer generelle
open
-kommandoen bruker en grundigere metode for å få et program til å » åpne » filargumentet sendt til den åpne kommandoen (dvs. det avhenger av den samme funksjonaliteten som Finder ‘ s » dobbeltklikk for å åpne » handling fungerer). - @Viktor Haag: Begge disse vil jobbe med TextEdit.
Svar
Hvis du søker etter en behagelig måte med mer «Linux-følelse», legg til noe som følger til ~/.profile
:
alias textmate="open -a TextMate"
eller
alias textedit="open -a TextEdit"
avhengig av redaktørene dine.
Kommentarer
- Selv om
.profile
fungerer, fungerer.bash_profile
er mer vanlig på OS X.
Svar
Hvis du allerede har begynt å skrive inn ter minal og du vil fortsette på favorittredigereren din, kan du trykke ctrl + X , ctrl + E og fortsette arbeider i emacs eller standard bash editor.
Hvis du vil endre standardredigeringsprogrammet, kan du endre miljøvariabelen EDITOR til din favoritt:
EDITOR=vim;export EDITOR
Svar
1) Raskt åpent tekst Rediger innholdsredigeringsgrensesnitt, vær oppmerksom på at de genererte filene er lagret i /tmp
-katalogen:
#Input content + Enter + Ctrl+D open -f #open empty tempfile echo|open -f #alias alias txted="echo|open -f" txted
2) Foretrekker å ta standardinngang og sende den til TextEdit
echo "input something"|open -f cat Dockerfile|open -f
3) Bare åpne en TextEdit:
open -e
Fra man open
:
-e Opens with TextEdit. -f Reads input from standard input and opens with TextEdit.
Svar
Se om du har vim-editoren, jeg visste ikke engang at terminalen min kunne bruke den.
Prøv:
user> vimtutor
for å finne ut kontrollene.
Du kan redigere filer ganske bra med det. Syntaksen ser noe ut som:
user> vim foo.txt
Svar
TextWrangler (nå avviklet og erstattet med BBEdit) når installert med Command Line Utilities
, tillot deg å gjøre:
edit README.txt
for å starte TextWrangler, som for meg er bedre enn open -t README.txt
, men kanskje jeg bare lider av treghet.
FYI – edit
er en binær kjørbar fil ( fra TextWrangler-settet), ikke bare et alias eller symlink.
Svar
Siden du vil åpne «en» tekstredigerer . Det burde ikke være galt hvis du bruker en kommandolinje tekstredigerer som vim eller vi. Bare skriv
user> vim filename
Ser på de andre svarene kan virke kontroversielle. Men da du jobber mest inne i terminalen. Bruk av vim eller Gedit er det ideelle valget.
Svar
Bruk gedit
-kommando:
gedit your-file.ext
Kommentarer
-
gedit
er ikke installert som standard på MacOS, selv om t kan installeres via hjemmebryggingbrew install gedit
- Det fungerer på Linux: D
- OPP leter etter en MacOS-løsning, ikke Linux. Og nevnte å lete etter noe som skulle erstatte gedit på Linux. Dette er også et MacOS-nettsted, så en Linux-løsning offftopic.