0
私はbashで新しく、ユーザのマルチライン入力(改行、ある種のコード行などのテキスト)を保存するbashスクリプトを作成しようとしています。改行(「Enter」を押すと)、複数行の貼り付け(「Ctrl + V」の行を貼り付ける)、「Enter」ではなく新しいキーを設定して入力を送信し、スクリプトの次のステップ。Bash:read/readarray multiline input
私はread
で試しましたが、複数行はできません。
echo "Enter content :"
read content
私は改行を押して「入力」することができますが、各単語はスペースで区切る配列で分離されて、ここで
readarray
(
How to delete a character in bash read -d multiline input?)との例を見つけました。私は線だけを分離したいと思っています。
echo "Enter package names, one per line: hit Ctrl-D on a blank line to stop"
readarray -t pkgs
ご意見はありますか?それとも、まったく別のやり方がありますか?ご協力ありがとうございました。
こんにちは、この回答に感謝します。私はIFSについて知らなかった。興味がある他の人向け: 'echo"パッケージ名を1行に1つ入力してください。空白行でCtrl-Dを押すと、 " IFS = $ '\ n' readarray lines $ {lines [ ]} do \t echo "$ line" >> result.txt done' – Lucien
コメントにコードブロックを入れないでください。旨く動きません。 :)また私の編集を参照してください。 –