bash:配列の環境変数を設定し、シェルスクリプトから逆参照すると失敗する

OpenFile:

このようにして、配列を環境変数として設定します。脚本test.sh

test.sh

#!/bin/bash
export STRING=( "str1" "str2" )

ソースtest.sh

今スクリプトで test-1.sh

#!/bin/bash
echo ${STRING[0]}

応答は何もない、単なる空白行STRING="str1"ですecho $STRINGtest-1.shtest.shで設定てで設定しようとする、これは機能します。

テストはrootユーザーのみから実行されます。次に、配列をenv変数として設定して、要件に従って配列の要素を呼び出す方法を教えてください。以前、私は修正さえしようとしました、/etc/bashrcそしてそれは何もポジティブに帰着しませんでした。

これらの変数設定を使用する必要がある多くのスクリプトを記述しなければならない場合があるため、配列を環境変数として設定する必要があります。

誰かが私が間違っているところを修正するための提案を提供できますか?

ormaaj:

細かいマニュアルの「バグ」セクションを読んでください。

配列変数は(まだ)エクスポートできません。

ただし、多くの人がこれを実際のバグと見なしていることはわかりません。kshスタイルの配列をサポートする他のシェルは、それらをエクスポートすることもできません。

パラメータや変数、または環境を介して、配列定義を簡単に渡すことができます。ただし、通常はあまり役に立ちません。

function f {
    unset -v "$2"
    typeset "$2"
    eval "${!1}"
    typeset -p "$2"
}

typeset -a a=(a b c)
myArr=$(typeset -p a) f myArr a

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

シェルスクリプトのパラメータ展開に関する環境変数の逆参照

分類Dev

Pythonスクリプトの結果となるようにシェルで環境変数を設定するにはどうすればよいですか?

分類Dev

Reactアプリのシェルスクリプトで環境変数を設定する

分類Dev

シェルスクリプトを使用してJava環境変数を設定する方法

分類Dev

シェルスクリプトから環境変数をロードする

分類Dev

JenkinsのGroovyスクリプトから環境変数を設定します

分類Dev

JenkinsのGroovyスクリプトから環境変数を設定します

分類Dev

TclスクリプトからWindows環境変数を設定する方法

分類Dev

スクリプトから環境変数(PATHなど)を設定する

分類Dev

シェルスクリプトから環境変数を移植可能に設定

分類Dev

環境変数がUnixシェルスクリプトで設定されていることを確認する簡潔な方法は何ですか?

分類Dev

Xcode-ビルドフェーズ中にbashスクリプトから環境変数を設定/追加する

分類Dev

sbtシェル内から環境変数を設定する

分類Dev

配列がbashスクリプトでループされる前に、配列内のアイテムから変数を設定します

分類Dev

systemdサービスファイルのshスクリプトから環境変数を設定します

分類Dev

bashスクリプト内からシェル変数$ COLUMNSを参照する

分類Dev

bashスクリプトを介してシステム環境変数を設定しますか?

分類Dev

シェルスクリプトは、呼び出し元のシェルの環境変数を設定できますか?

分類Dev

スクリプトから永続的な環境変数を設定する正しい方法

分類Dev

アプリ設定の環境変数として配列を定義する方法

分類Dev

アプリ設定の環境変数として配列を定義する方法

分類Dev

Pythonスクリプトで環境変数を設定する

分類Dev

cmake:スクリプトから環境変数を設定します

分類Dev

関数内からスクリプトを取得すると、Bashシェル変数が失われます

分類Dev

Pythonスクリプトを介してシェル環境変数を設定します

分類Dev

bashコマンドを介してGithubシークレットから環境変数を設定する方法

分類Dev

シェルスクリプト内のローカルシェルからリモートssh接続に環境変数をコピーする方法は?

分類Dev

Fastlaneからシェルスクリプトに環境変数を渡す

分類Dev

シェルからの変数の設定:スクリプトでそれらを使用する方法は?

Related 関連記事

  1. 1

    シェルスクリプトのパラメータ展開に関する環境変数の逆参照

  2. 2

    Pythonスクリプトの結果となるようにシェルで環境変数を設定するにはどうすればよいですか?

  3. 3

    Reactアプリのシェルスクリプトで環境変数を設定する

  4. 4

    シェルスクリプトを使用してJava環境変数を設定する方法

  5. 5

    シェルスクリプトから環境変数をロードする

  6. 6

    JenkinsのGroovyスクリプトから環境変数を設定します

  7. 7

    JenkinsのGroovyスクリプトから環境変数を設定します

  8. 8

    TclスクリプトからWindows環境変数を設定する方法

  9. 9

    スクリプトから環境変数(PATHなど)を設定する

  10. 10

    シェルスクリプトから環境変数を移植可能に設定

  11. 11

    環境変数がUnixシェルスクリプトで設定されていることを確認する簡潔な方法は何ですか?

  12. 12

    Xcode-ビルドフェーズ中にbashスクリプトから環境変数を設定/追加する

  13. 13

    sbtシェル内から環境変数を設定する

  14. 14

    配列がbashスクリプトでループされる前に、配列内のアイテムから変数を設定します

  15. 15

    systemdサービスファイルのshスクリプトから環境変数を設定します

  16. 16

    bashスクリプト内からシェル変数$ COLUMNSを参照する

  17. 17

    bashスクリプトを介してシステム環境変数を設定しますか?

  18. 18

    シェルスクリプトは、呼び出し元のシェルの環境変数を設定できますか?

  19. 19

    スクリプトから永続的な環境変数を設定する正しい方法

  20. 20

    アプリ設定の環境変数として配列を定義する方法

  21. 21

    アプリ設定の環境変数として配列を定義する方法

  22. 22

    Pythonスクリプトで環境変数を設定する

  23. 23

    cmake:スクリプトから環境変数を設定します

  24. 24

    関数内からスクリプトを取得すると、Bashシェル変数が失われます

  25. 25

    Pythonスクリプトを介してシェル環境変数を設定します

  26. 26

    bashコマンドを介してGithubシークレットから環境変数を設定する方法

  27. 27

    シェルスクリプト内のローカルシェルからリモートssh接続に環境変数をコピーする方法は?

  28. 28

    Fastlaneからシェルスクリプトに環境変数を渡す

  29. 29

    シェルからの変数の設定:スクリプトでそれらを使用する方法は?

ホットタグ

アーカイブ