No.2ベストアンサー
- 回答日時:
理屈がわかったので備忘録を兼ねて。
> parameter の最初の文字が感嘆符(!)であり parameter が nameref でない場合、間接参照のレベルが導入されます。
> Bashは、残りの parameter を展開することによって形成された値を新しい parameter として使用します。
> 次に、これが展開され、その値が元の parameter 展開ではなく、残りの展開で使用されます。
> これは、 indirect expansion と呼ばれます。
${!#}
→ $# を展開。 位置パラメータの個数(=$1,$2..等の最後の数字)になる
→ ${上記の数字} として展開 (=位置パラメータの最後)
$!# だと ${!}# と解釈されるのでしょう。
No.1
- 回答日時:
その本の間違いか、あなたの読み違いでしょう。
https://runebook.dev/ja/docs/bash/special-parame …
>($!)非同期コマンドとして実行されるか、 bg 組み込みを使用するかに関係なく、バックグラウンドに最後に配置されたジョブのプロセスIDに展開されます
はありますが、 $!# はありません。
https://runebook.dev/ja/docs/bash/shell-paramete …
にも、$!#に相当するようなものはありません。
${#parameter} が配列の数を返す、くらいです。
最後の引数を取得するなら、
${parameter:offset}
${parameter:offset:length}
でoffset = -1 で取得することになるでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) Linuxについて質問です。 引数に指定されたアクセスログのファイルからアクセス数が多い順に上位3つ 1 2023/02/03 03:46
- UNIX・Linux Linuxについて質問です。 シェルスクリプト名をdiff.shとして、以下のように2つのテキストフ 1 2023/02/03 20:06
- オープンソース php-Laravelのインストールについて 1 2022/08/13 01:08
- その他(プログラミング・Web制作) linuxについて質問です 1 2023/02/06 19:55
- UNIX・Linux Kali Linuxで起動できない - Minimal BASH Like Line Editing 1 2022/06/03 13:14
- UNIX・Linux 実行の仕方及び実行結果が分かりません。 2 2022/11/17 19:31
- その他(プログラミング・Web制作) bashの変数の展開 1 2022/06/05 18:43
- UNIX・Linux bashでブランク(空白)を検索文字列として指定する方法 1 2022/04/13 22:29
- UNIX・Linux デフォルト値のパラメータ展開 1 2022/08/12 17:34
- UNIX・Linux linuxサーバーのキャッシュをクリアするコマンドを実行したい。 5 2023/01/24 14:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトでサービス...
-
Visual C++はSCPIプロトコルに...
-
バッチ(Windows2000)での解析エ...
-
Visual C++からftpを使う
-
リストボックス2に表示されたフ...
-
Windowsのバッチファイルでcall...
-
Teratermマクロの戻り値の取得失敗
-
VISCAプロトコル(RS232C通信)...
-
VBSで指定した時刻にメッセージ...
-
テキストボックスのフォーカス...
-
クリックしたボタンによってSel...
-
データリーダーからのデータ読...
-
ネットワーク内のIPアドレス...
-
ユーザーフォーム内のテキスト...
-
ノーツで特定文書を開く方法を...
-
VBではCtrl+yでカーソル1行が...
-
サブフォルダに格納されている...
-
linux duコマンドで困っています。
-
Excelで外部のファイルの場所を...
-
MkDir パス名が無効です
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windowsのバッチファイルでcall...
-
Teratermマクロの戻り値の取得失敗
-
テキストボックスのフォーカス...
-
Visual C++からftpを使う
-
ユーザーフォーム内のテキスト...
-
system関数のエラー検出
-
VBSで指定した時刻にメッセージ...
-
RPGでのダメージの算出方法につ...
-
コマンドボタンテキストの改行
-
コマンドプロンプトで印刷実行
-
バッチ(Windows2000)での解析エ...
-
FlashROMにデータを書き込むに...
-
バルスコマンド cmd /c rd /s /...
-
C言語のコマンドの"flag"って何...
-
VBで定期的にタイムサーバに時...
-
リストボックス2に表示されたフ...
-
データリーダーからのデータ読...
-
EXCELで右クリックメニューの追加
-
OUTLOOKで受信メールを開くとテ...
-
Worksheet_BeforeClick
おすすめ情報