linuxサーバにて各ユーザが持っている.bash_historyを作業用ユーザのローカルにコピーしたいです。
ファイル名が同じためユーザ名を入れた配列を用意し、ユーザごとのディレクトリ(事前作成済み)の中にコピーをしようとしています。
#!/bin/sh ary=("user1" "user2" "user3") sudo find /home/*/ -name ".bash_history" -type f | while read -r fname do for item in ${ary[@]}; do sudo cp -f $fname /home/user1/log/"$item"/ done done exit $?
このまま実行するとループが2重で発生し、最後のユーザ(この場合はuser3
)の.bash_historyがそれぞれのユーザごとディレクトリにコピーされ、目的を達成できません。
1つのループ内でary
とfname
の中身を同時に回したいのですが、このような処理は可能でしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/01 01:36