GNU/Linux >> Linux の 問題 >  >> Linux

awk の bash キャプチャ出力を配列に

次のように括弧を追加します:

myarr=($(ps -u kdride | awk '{ print $1 }'))

# Now access elements of an array (change "1" to whatever you want)
echo ${myarr[1]}

# Or loop through every element in the array
for i in "${myarr[@]}"
do
   :
  echo $i
done

bash も参照してください — 配列。


Bash の組み込み mapfile (またはその類義語 readarray を使用) )

mapfile -t -s 1 myarr < <(ps -u myusername | awk '{print $1}')

少なくとも GNU/Linux では ps の出力をフォーマットできます 、したがって awk は必要ありません と -s 1

mapfile -t myarr < <(ps -u myusername -o pid=)

Linux
  1. 出力を新しい行に分割しますか?

  2. Bash の配列が見つかりません

  3. Bashを使用して、最後のコマンドの出力を変数に自動的にキャプチャしますか?

  1. ls 出力を csv に変換する

  2. bash:リスト ファイルを変数に入れますが、配列のサイズは 1 です

  3. コマンド出力をAnsibleの配列に保存する方法は?

  1. Json配列からBash配列に1つのフィールドを解析しますか?

  2. Bashの文字列/配列から一意の要素の配列を作成するにはどうすればよいですか?

  3. UNIXのtimeコマンドの出力をbashの変数にリダイレクトしますか?