Erstellen von Mac OS-Terminalverknüpfungen [duplizieren]

5

Mögliches Duplikat:
So erstellen Sie einen benutzerdefinierten Befehl mit Optionen

Ich möchte ein Terminal-Short erstellen, das mich zu einem tief verschachtelten Ordner führt. Ich möchte zum Beispiel jedes Mal, wenn ich das Terminal öffne, "star" eingeben, um zur CD-Quelle / alpha / beta / star zu gelangen.

Es fällt mir schwer zu glauben, dass diese Frage nicht gestellt wurde, aber ich kann Ihnen versichern, dass Sie nicht die genaue schrittweise Lösung gefunden haben. Wenn Sie mich wissen lassen könnten, wie es geht, oder mich einfach auf eine vorhandene Antwort hinweisen könnten, wäre ich Ihnen dankbar.

Keruilin
quelle
... es sei denn, jemand erinnert sich, dass im Gegensatz zu diesem Fall hier nicht nur Aliase möglich sind, und teilt dem armen Fragesteller die CDPATHVariable mit. (-:
JdeBP

Antworten:

5

Sie müssen sich die Bash- Aliase ansehen .

Fügen Sie entweder Ihrem .profileoder .bashrcoder Folgendes hinzu .bash_profile:

alias star='cd source/alpha/beta/star'

Jeder Befehlszeileneditor (z. B. vioder emacs) funktioniert genauso wie jeder Texteditor für den Mac. Aliase funktionieren in allen Unix-ähnlichen Umgebungen (SunOS, Mac OS X, Linux, AIX usw.).

Beenden Sie dann Terminal , und wenn Sie neu starten, sollte es dort sein. (Alternativ können Sie die Skriptdatei als Quelle verwenden, aber ich habe festgestellt, dass ein Neustart bashbesser ist.)

Labyrinth
quelle
Können Sie bitte angeben, wo sich .profile, .bashrc und .bash_profile befinden? Vielen Dank
Paul Mason
@PaulMason - Sie sind dort, wo sie sich in einer * nix-ähnlichen Umgebung befinden: in Ihrem Home-Verzeichnis, wenn Sie Ihre Konsole öffnen.
Warren
3

Sie möchten Aliase machen. Hier ist eine einfache Möglichkeit, einen Alias ​​zu erstellen, ohne die .bashrc-Datei öffnen zu müssen. Speichern Sie dieses Skript einfach in einer Datei namens mkalias und verschieben Sie es dann in Ihr usr-Binärverzeichnis (ich glaube, das ist ~/binfür OSX). Führen Sie dann chmod +x mkaliasdie Datei aus. Nun , wenn Sie einen Alias erstellen möchten Sie einfach eingeben: mkalias myalias='my commands'.

#!/bin/bash
# path to .bashrc, .zshrc, etc.
export RC='~/.bashrc'

if [ `expr index "${1:-0}i" =` == 0 ]; then
    echo "Usage: mkalias ALIAS=EXPRESSION
Makes alias permanent by writing to .bash_aliases contained in home directory."
else
    # Export alias
    echo 'alias '$1 >> $RC
fi

Und um Ihre Frage jetzt zu beantworten, geben Sie einfach Folgendes ein:

alias star='cd /path/where/you/want/to/go'
Dennis
quelle
1

Probieren Sie dieses Applescript für Größe an:

do shell script "open -a Terminal.app"
tell application "Terminal"
    do script "cd /path/to/my/directory"
end tell

Das sollte ein Terminal für Sie öffnen und Sie in Ihr Verzeichnis bringen. Sie können es mit Ihrem Desktop verknüpfen oder eine Verknüpfung dafür erstellen.

Kirche
quelle
0

Shell-Skripte sind der normale Weg, um Dinge zu erledigen, wirken sich jedoch cdnur auf die aktuelle Shell aus, und Shell-Skripte rufen eine neue Subshell auf, um ausgeführt zu werden. Sie müssen einen Alias erstellen , um die aktuelle Shell zu beeinflussen.

alias star="cd source/alpha/beta/star"

Wenn Sie diese Leitung hinzufügen, ~/.bashrcsollte sie normalerweise verfügbar sein, wenn Sie das Terminal öffnen.

Ignacio Vazquez-Abrams
quelle
Wie fügt man ~ / .bashrc hinzu?
Keruilin
Öffne es in einem Texteditor. Es ist eine reine Textdatei.
Ignacio Vazquez-Abrams
Das . Gibt an, dass die Datei ausgeblendet ist, sodass Sie ausgeblendete Dateien in Ihrem Finder aktivieren können, oder ls -a, um zu sehen, was sich dort befindet. Bearbeiten Sie sie wie jede andere Textdatei.
Joe Internet