이 배시를 고칠 수 있어?

이 배시를 고칠 수 있어?

다음과 같은 모든 메일 계정 목록을 관리할 수 있습니다.

for dir in /home/*/mail/*/*; do
    echo "$dir"  | awk -F"/" '{print $6"@"$5}' done

Results:
[email protected]
[email protected]
etc...

하지만 다음과 같이 작동하게 할 수는 없습니다.

for dir in /home/*/mail/*/*; do
    doveadm expunge -u "$dir" mailbox '*' savedbefore 100days   | awk -F"/" '{print $6"@"$5}'
done

작업 순서는 다음과 같습니다.

doveadm expunge -u [email protected] mailbox '*' savedbefore 100days

나는 bash에 대해 아무것도 모르지만 구문을 수정하는 것이 쉽다는 것을 알았습니다. 그럼 제 말을 고쳐 주시겠어요?

답변1

나는 다음을 추천한다:

for dir in /home/*/mail/*/*; do
  dir=$(echo "$dir" | awk -F"/" '{print $6"@"$5}')
  doveadm expunge -u "$dir" mailbox '*' savedbefore 100days
done

관련 정보