![ファイルからコマンドを実行する[閉じる]](https://linux33.com/image/79829/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8B%E3%82%89%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%5B%E9%96%89%E3%81%98%E3%82%8B%5D.png)
ファイルにいくつかのコマンドを書きますが(たとえば、cmake)、テキストファイルにいくつかのコマンドを書くためにcmake runが必要ないとしましょう。はい
ファイル名: cmake_command
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ../prject-src/ && make && make install
簡単にするために、cmake_commandファイルがフォルダにあると仮定してコマンドをそのまま実行すると、ビルドが開始されます。
このコマンドを試しました
for i in $(cat cmake_command); do echo $i; done
テストで行全体を印刷するのではなく、各スペースに分割して個々の文字列のリストを取得します。
このコマンドを取得するのではなく、機能するようにどのように再構成できますか?
cmake
-DCMAKE_BUILD_TYPE=RelWithDebInfo
../prject-src/
&&
make && make install
私はこの出力を取得します
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ../prject-src/ && make && make install
答え1
最も簡単な方法は次のとおりです。
while read i; do echo "$i"; done < cmake_command