/ / Wie konvertiere ich diese zsh-Funktion in Fisch Shell? - Zsh, Fisch

Wie konvertiere ich diese zsh-Funktion in Fisch Shell? - Zsh, Fisch

Ich habe diese Funktion, die gut in zsh funktioniert, aber ich möchte es in Fischschale umwandeln und ich kann es nicht funktionieren.

function ogf () {
echo "Cloning, your editor will open when clone has completed..."
source <(TARGET_DIRECTORY=~/students EDITOR=$EDITOR clone_git_file -ts "$1")
}

Antworten:

2 für die Antwort № 1

Da die Fisch - Syntax sich von zsh unterscheidet, müssen Sie auch die Ausgabe von clone_git_file zu source es.

Zum Beispiel, wenn clone_git_file ist etwas wie:

#!/bin/bash
echo "FOO=$TARGET_DIRECTORY"
echo "BAR=$2"

Sie müssen es in Fisch-Syntax ändern.

#!/bin/bash
echo "set -gx FOO $TARGET_DIRECTORY"
echo "set -gx BAR $2"

Jetzt hier ist der ogf() Funktion und Beispielcode für Fisch:

function ogf
echo "Cloning, your editor will open when clone has completed..."
source (env TARGET_DIRECTORY=~/students EDITOR=$EDITOR clone_git_file -ts $argv[1] | psub)
end

ogf MY_ARGUMENT
echo "FOO is $FOO"
echo "BAR is $BAR"

Wenn Sie diesen Code mit Fisch ausführen, lautet die Ausgabe:

FOO is /home/MY_USER/students
BAR is MY_ARGUMENT