配列の個々の要素を印刷できません。

配列の個々の要素を印刷できません。

私はUNIXスクリプトで配列がどのように機能するかを調べるためにテストスクリプトを書いています。

#! /bin/bash
arr=(one two three)
echo "${arr[0]}"

上記は、配列の0番目の位置「1」を印刷することを期待していました。

ただし、実行すると、bash test.sh出力は次のように印刷されます。

(one two three)

変数を文字列として扱うと思います。 (私も試してみましsh test.shたが成功しませんでした。)

declare -a arr次の文を追加しようとするとnot a valid identifier

uname -a
Linux XXXXXXX 2.6.32-754.31.1.el6.x86_64 #1 SMP Mon Jun 15 08:08:31 EDT 2020 x86_64 x86_64 x86_64 GNU/Linux

ここに助けが必要です。ありがとうございます。

ベストアンサー1

ご意見ありがとうございます。このコメントは私を別の方法で考えさせました。問題はEOL変換です。 .shファイルはWindowsで作成され、「CRとLF」のEOLを持ちます。私はnotepad ++を使ってUNIXスタイルのEOL(単に「LF」)に変換しましたが、問題は消えました。

おすすめ記事