カスタム変数の「$@」拡張

カスタム変数の「$@」拡張

「のような(Bourne Shell)変数を作成しようとしています。$@だから私はいくつかの単語を生成し、それらのいくつかはスペースを保持します。変数をさまざまな方法で定義しようとしましたが、それでも機能しません。

#!/bin/sh

n=\"one\ two\"\ three
for i in "$n"; do
echo $i
done

参照された変数を ", I get this like" に置き換えると、スクリプトがone two最初に出力され、次の反復で出力されるように変数を定義したいと思います。three$@」と'one two' threeパラメータとして渡されます。

はい」$@「ただ魔法?

ベストアンサー1

したがって、Bourne Shell(IIRC)はアレイをサポートしません。引き続き「$@」を使用できます。

set -- "one two" three
for i in "${@}" ; do
    echo "$i"
done

出力:

one two
three

AIX 7.1 bsh でテストされました。

おすすめ記事