info.properties
ファイルがあり、このMY_NAME
プロパティがあり、このプロパティをMakefile
で使用できます。私はすでに試しましたが、myScript.sh
ファイルでそのプロパティを直接使用することはできません。
そのため、このプロパティを引数としてmyScript.sh
に渡そうとしています。そして私はこのようにしています:
メイクファイル:
my_stage:
chmod 777 myScript.sh && ./myScript.sh $(MY_NAME)
myScript.shにはこれがあります:
#!/bin/bash -e
source .build/utils.sh
MY_NAME=$1
echo "MY_NAME=${MY_NAME}"
しかし、私は常にこのエラーを受け取ります:
chmod 777 myScript.sh && ./myScript.sh My-name-Mariana
.build/utils.bash: line 596: My-name-Mariana: command not found
make: *** [test] Error 127
どうすればこれを解決できますか?
更新:
私は.build/utils.bash
が私のパラメータを実行しようとしていることを知っています、私はエラーでそれを見ることができます。しかし、は私のコードプロジェクトの一部ではないので、持っていないので、そのファイルを変更することはできません。
スクリプトは_.build/utils.bash
_をソースとすることができるため、実際にそれを読み取ることができることがすでに証明されています。たとえば、Makefileを含むディレクトリで_less .build/utils.bash
_を試してください。
_.build/utils.bash
_を変更せずに実際の問題を修正するには、_$1
_の内容を_MY_NAME
_変数に代入してから、shift
コマンドを使用して_$1
_から削除します。 SOMECODE)__-beforeあなた_source .build/utils.sh
_。
しかし、その後_utils.bash
_は_$1
_を空の文字列として受け取り、失敗するか別のことを行う可能性があります-_utils.bash
_またはそれに関するいくつかのドキュメントを読まないと、何を知ることが不可能になりますそれは期待しています。
.build/utils.bash
スクリプトの596行目などで、My-name-Mariana
をコマンドとして呼び出そうとしています。リテラルまたは$1
として。存在しないため、実行はすぐに失敗します(bash
の-e
フラグが原因)。
.build/utils.bash: line 596: My-name-Mariana: command not found
解決策は、コードを修正することです。ここでは提供していませんので、具体的な提案はできませんが、関連するコンテキストで質問を更新していただければ、喜んで誰かが提供してくれると思います。