答えて
test
または[
はこれを行う方法です。これは外部コマンドなので、すべてのシェルに当てはまります。
if [ (date '+%k') -ge 8 ]
echo "It's larger!"
end
賢明になるには:ほとんどのシェル( 'fish'や' bash'を含む)では 'test'と' ['' *は*外部コマンドではありません。これは、 'type'組み込み関数を使って確認することができます。これは、両方とも組み込み関数であることを示します。しかし、ほとんどのシステムは '/ bin/test'と'/bin/['を提供しているので、シェルがそれらを提供していなくても使うことができます。しかしシェルは、同じ名前の外部コマンドの前に常に組み込み関数を使用します。 –
はい、 'test'と' ['は組み込み関数でもあります。しかし、それらは外部コマンドであるため、それらの動作は固定されているので、すべてのシェルで共通に使用されます。すなわち、シェルは '/'/bin / –
あなたは次のように、test
魚の組み込みを使用することができます。
if test (date +%k) -gt 8
...
end
ない私は「魚に多くのドキュメントがありません」に同意思いを確認してください。 http://fishshell.com/を見ましたか?そのほとんどは 'man'コマンドで利用できます。もし私たちができると思うものがあれば、あなたの質問に答えるのが簡単になりました:https://github.com/fish-shell/fish-shell/issues/new –