私は Stack Overflow で同様の質問をすべて見て、それらのドキュメントでたくさんのことを試しました。私の現在の試みは以下です。
私が達成しようとしているのは、コンピューター ユーザーに基づく異なる動作です。職場のコンピューターと自宅のコンピューターがあり、コマンドラインに「コード」を入力すると、自宅で入力したときとは異なるディレクトリに職場のコンピューターが移動するようにします。私はこれを試しました(私の仕事のユーザー名はafk、家はsfkです):
function code
set result (dirh)
if [contains "sfk" $result]
cd ~/rails
else if [contains "afk" $result]
cd ~/code
else
echo $result
end
end
現在、これは「不明なコマンドに Users/sfk/.config/fish/ が含まれています」という問題があります (これを入力すると、私の PWD は Users/sfk/.config/fish/ になります)。たぶん含むはリスト用だと思いますが、ドキュメントはこれについて特に明確ではありませんか? どうすればこれを行うことができるでしょうか?
編集
これを試してみたところ、エラーはなくなりましたが、最終的にelseケースになり、本来はそうではないため、dirh文字列にISが含まれているユーザーIS sfkが発生します。
function code
set result (dirh)
if test (contains "sfk" $result)
cd ~/rails
else if test (contains "afk" $result)
cd ~/code
else
echo $result
end
end