次のコマンドを使用すると、solcjs --bin test.sol
次の名前のファイルが生成されますbyonotary_sol_BYONotary.bin
。
このファイル名を変数にすぐに保存するにはどうすればよいですか?solcjs --bin test.sol
新しく作成されたファイル名を同じコード行の変数に実行して保存したいと思います。
ありがとうございます。
答え1
ファイル名が次のようになるためファイルの契約に基づいて作成された、必要な「新しい」ファイルが何であるかを簡単に確認できるように、出力用の一時ディレクトリを作成することをお勧めします。
d=$(mktemp -d -p .)
solcjs --bin --output-dir "$d" test.sol && set -- "$d"/*.bin && newfile=$1
これは、現在の()ディレクトリに相対的なディレクトリをmktemp
作成することを意味します。.
その後、以前と同じように実行されますが、オプションがsolcjs
あります--output-dir
。同じ行(または読みやすく別の行)で*.bin
新しいディレクトリにワイルドカードを拡張するようにシェルに要求します。おそらく一致する唯一のファイルは新しく作成されたファイルです。もちろん、*.bin
このオプションの使用を中止する場合は調整してください。--bin
date +%s
現在のタイムスタンプ(例:)を使用したり、次を使用するなど、さまざまな方法で一時ディレクトリ名を調整できます。mktemp
金型特徴。