!!
bashをもっと学びながら、文字列の置き換え作業をしていて、いくつかのダミーの例を追加しましたecho ${TEST/hey/!!}
。
最後に入力したコマンドに変わったというのが驚きですね!!
…それはなんですか?どういうわけかMagicコードリンクに接続されていますか?$?
それともbashで同じように使用できる他のものはありますか?$_
-
ベストアンサー1
Bashは拡張と呼ばれるさまざまなタイプの自動置換を実行します。たとえば、それらのいくつかは次のとおりです。
- 歴史的拡張
- パス拡張
- パラメータ拡張
- 他の人...
Bashを含めると、!!
以前に実行されたコマンドに自動的に置き換えられます。役割!
の実行履歴の拡張。たとえば、!10
コマンド履歴の10番目のコマンドに置き換えられます。
$
パラメータと変数の拡張を実行します。次の文字はすべて-
、_
および?
bashの特殊パラメータです。
これについて学ぶための最良の情報源はbashのマニュアルです。Bashリファレンスマニュアル:トップ
記載されている例には、echo ${TEST/hey/!!}
パラメータと履歴の拡張が含まれます。