シェルキーワードを無効にするには?

シェルキーワードを無効にするには?

enable組み込みコマンドを使用すると、echo次のようにシェル組み込みコマンドを無効にできます。

enable -n echo

しかし、このようなシェルキーワードをどのように無効にしますかtime?しようとすると:

enable -n time

私たちは次のような「答え」を得るでしょう:

bash: enable: time: not a shell builtin

ノート:私は何をすべきかを知っています。ジャンプしたtimeつまり/usr/bin、タイトルで要求した内容を行うことが可能かどうか知りたいと思います。

ベストアンサー1

あなたはできます:

alias time='"time" '

(末尾のスペースはボーナスでエイリアス拡張を許可するためのものです)。

キーワード(キーワードはシェル言語構文の一部です)を引用すると、そのキーワードはキーワードとして解釈されないため、一般的なコマンド検索が行われます。

bash、では動作しますがzsh、またはでは動作しません。mkshksh93ashyash

非対話型インスタンス(スクリプトなど)では、他のシェルとは異なり、非対話型bashではデフォルトでエイリアスを拡張する必要はありません。shopt -s expand_aliasesbash

おすすめ記事