Linux

シェルスクリプト:配列の要素をループ処理する書き方

投稿日:

シェルスクリプトで、配列の要素をループ処理する記述方法を紹介します。

以下がそのサンプルコードです。

#!/usr/bin/sh

set -eu

array=( foo \ 
        bar \
        baz
)
for i in "${array[@]}" 
do
    echo "$i" 
done
  • 配列の要素を1行ずつ書いています。これなら途中の要素は、先頭に「#」を書くことでコメントアウトすることができます。

出力結果はこうなります(ファイル名を array-loop.sh としてあります)。

$ ./array-loop.sh
foo
bar
baz

ちなみに Ubuntu の場合、/usr/bin/sh/usr/bin/dash のシンボリックリンクになっていますが、dash は配列が使えないので、シェルスクリプトのファイルの先頭行 (Shebang) には、/usr/bin/bash を記述します。

📂-Linux

執筆者:labo


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Linux

【Linux】 CentOS のマニュアル

CentOS は、RHEL (Red Hat Enterprise Linux)のソースコードから商標や商用パッケージ等を除去してリビルドした RHELクローンです。 マニュアルを見る場合は、RHEL …

CentOS

yum のエラー「Not using downloaded repomd.xml because it is older than what we have」

私が管理している CentOS 7 から yum に関するエラー通知メールが送られてきました。 目次メールの内容対応方法実際に実行してみました メールの内容 以下がメールの抜粋になります。 件名: C …

Linux

pip install でインストールしたパッケージを使おうとするエラーが発生する

目次1. はじめに2. 環境3. 対処方法4. おわりに 1. はじめに 以下のコマンドで、Python のパッケージをシステムにインストールしたとします。 $ sudo pip install {パ …

Linux

ラベル行のある複数ファイルを1ファイルにマージするコマンド

ラベル行のある複数ファイルをマージするコマンドを紹介します。

CentOS

CentOS 6 での yum update エラーに対応しました

問題 先日、CentOS 6.9 で yum update したところ、以下のエラーが発生しました。 https://ca.mirror.babylon.network/remi/enterprise …