知っておくとちょっと便利!bash スクリプトで使用する波括弧 {} について

◆ Live配信スケジュール ◆
サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。
⇒ 詳細スケジュールはこちらから
⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください
【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました
生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!!
https://tech-lab.connpass.com/event/315703/

【5/27開催】事業変革を最新ソフトウェア技術で加速する「OSS利活用事例セミナー」
OSSのビジネス活用事例などを紹介します!登壇者はスカパー様やIPAなど🎤
OSSを活用した新たなビジネス創出やDX推進のヒントを得られる機会です。
https://ossforum.connpass.com/event/318583/
【6/19開催】Kong Community Japan Meetup #4
本イベントでは、Kong Inc. のVP of ProductであるReza Shafii氏もプレゼンターとして参加。当社からはアーキテクト マネージャーの槌野の登壇が決定!参加無料です!!
https://column.api-ecosystem.sios.jp/connect/kong/1081/

今号では、先月号でちらっとご紹介した波括弧 {} について、ちょっと詳しくご紹介します!

【おさらい】bash における 括弧 () [] {} とは

Linux で bash を使用している環境で、スクリプト内などに括弧 () [] {} が使用されることがあります。
これらの括弧を使用することで、より複雑なスクリプトが作成できたり、スクリプトの記述を簡略化する事が出来ます。
なお、bash とはシェルの名称です。シェルには他にもたくさんの種類がありますが、bash が Linux 標準のシェルとして採用されています。

先月号では丸括弧 ()角括弧 [] の使い方についてご紹介しましたが、波括弧 {}については紹介しきれなかったため、今号は波括弧 {} の使い方をメインにご紹介します。

波括弧 {} の使い方

  • 変数の展開
    下記のように括弧内に指定した変数の展開を実行します。

    $ echo ${HOME}
    /home/user1
    
  • 複数のコマンドをまとめる
    下記のように括弧内に指定した複数のコマンドをまとめて実行します。
    1行にまとめることができるので、見やすくて便利ですね。

    $ { echo "a"; echo "b"; echo "c"; }
    a
    b
    c
    
  • ブレース展開
    括弧内に複数の文字列を様々な条件で記述する事で、条件に沿った文字列を一気に出力することができます。

    【例1】{} 内に指定した文字を順次展開します。

    $ echo hoge{1,2,3}
    hoge1 hoge2 hoge3
    

    cp コマンドでファイルの末尾に文字列を付与してバックアップを作成する際に使用することもあります。

    $ls hoge*
    hoge.txt
    $ cp hoge{,.bak}.txt
    $ ls hoge*
    hoge.bak.txt  hoge.txt
    

    【例2】数字やアルファベットであれば、下記のように記述すると連番で展開します。

    $ echo hoge{1..10}
    hoge1 hoge2 hoge3 hoge4 hoge5 hoge6 hoge7 hoge8 hoge9 hoge10
    $ echo hoge{a..e}
    hogea hogeb hogec hoged hogee
    

    この記述方法は、for 文で指定した回数分の処理を実行する際によく使用されますね。

    $ for i in {1..5}; do echo $i; done
    1
    2
    3
    4
    5
    

    【例3】{} を入れ子 (ネスト) にして記述することもできます。

    $ echo hoge{a{1,2,3},b{4,5,6}}
    hogea1 hogea2 hogea3 hogeb4 hogeb5 hogeb6
    
アバター画像
About 貝野 友香 73 Articles
OSSよろず相談室でサポートをやっています。時々ライブ配信や勉強会に出ていることもあります。
ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

3人がこの投稿は役に立ったと言っています。


ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!

Be the first to comment

Leave a Reply

Your email address will not be published.


*


質問はこちら 閉じる