2016-09-28 2 views
0

Ich versuche eine Funktion zu meiner ~/.profile-Datei hinzuzufügen. Ich kopiere es aus der Laravel Heimstätte Installationsanleitung: enter link description here als Leitfaden sagt:Wie lautet die Syntax zum Schreiben einer Funktion in .profile linux mint

function homestead() { 
    (cd ~/Homestead && vagrant $*) 
} 

wenn ich „Quelle .profile“ tue es funktioniert gut, aber wenn ich i Neustart erhalten:

Syntaxfehler „(“ unerwartet und das System nicht lassen mich einloggen mehr

ich versuchte, die Klammern wie folgt zu entfernen:

function homestead{ 
     cd ~/Homestead && vagrant $* 
} 

aber ich bekomme:

Syntaxfehler in der Nähe von unerwartetem Token `cd‘

Ich habe keinen shebang auf der Datei, soll ich es sagen?

Antwort

1

Sie haben das falsche Element entfernt. Die POSIX-compliant Definition einer Funktion ist

homestead() { 
    (cd ~/Homestead && vagrant $*) 
} 

function (mit oder ohne die ()) ist eine Erweiterung aus bashksh entlehnt. source bedeutet, dass Sie bash ausführen, aber .profile wird von anderen POSIX-kompatiblen Shells verwendet, die das Schlüsselwort function nicht verstehen.

+0

funktioniert als ein Charme, danke chepner! – Riccardo

Verwandte Themen