
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プロトコルに...
-
gnuplot 等高線 に値を入れる方法
-
Excel VBAについて
-
Worksheet_BeforeRight(ByVal T...
-
VB .NETでのSocket間通信について
-
C# のスレッドに、上位から値を...
-
ネットワークフォルダの中身を...
-
C# mciSendStringでエラーコー...
-
find コマンド(Unix)
-
w3getからのアクセスを探知する...
-
VBA チェックボックスの設定に...
-
PCに保存していた写真を見られ...
-
拡張子をつくる
-
Page Not Found! 404Error
-
PHPのセキュリティ(ドキュメン...
-
windows UPDATEができない
-
同名フォルダを作成し、そのフ...
-
includeやrequireでファイル参...
-
大容量のデータ送受信で信用で...
-
一定期間過ぎたファイルを削除...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Teratermマクロの戻り値の取得失敗
-
ネットワークフォルダの中身を...
-
Windowsのバッチファイルでcall...
-
テキストボックスのフォーカス...
-
バッチ(Windows2000)での解析エ...
-
EXCELで右クリックメニューの追加
-
ユーザーフォーム内のテキスト...
-
コマンドプロンプトでサービス...
-
シリアル通信でのread関数の戻り値
-
バッチファイル pause時の文字...
-
データリーダーからのデータ読...
-
コマンドプロンプトで印刷実行
-
system関数のエラー検出
-
telnetで接続した先のコマンド...
-
VBAチェックボックスで有効無効...
-
リストボックス2に表示されたフ...
-
VBSで指定した時刻にメッセージ...
-
VBで定期的にタイムサーバに時...
-
表示を標準か改ページプレビュ...
-
ExcelVBA WorkSheet上の全てのC...
おすすめ情報