ユーザー入力を受け取り、ファイルの特定のフィールドに追加するシェルスクリプト

ユーザー入力を受け取り、ファイルの特定のフィールドに追加するシェルスクリプト

次の情報を含む records.txt テキストファイルがあります。

David 5000
Leo 3000

awkを使用してDavidの給与(例:5000)に1000を追加するにはどうすればよいですか?この1000がユーザーから出てほしい。つまり、ユーザー入力を意味します。ユーザーが入力する限り、Sedも機能します。

答え1

非常に強力ですが、awkbashでも行うことができます。次の内容がアイデアを与える可能性があります。

#!/bin/bin/env bash

while :;
 do
   read -p 'Enter salary: ' amount
   while read -r user salary 
     do printf '%s %d\n' "User salary of $user is now $((salary+amount))"
     done < salary 
 done

関連情報