순수 FTP 서버에 대한 할당량 확인 프로세스를 자동화하고 싶습니다.
나는 이것을 할 수 있도록 문서를 읽었습니다.pure-quotacheck -d /path2/home -u user
제가 생각할 수 있는 가장 쉬운 방법은 pure-pw list(사용자 및 홈페이지 경로 표시)를 위 명령과 결합하는 것이지만, 둘을 결합하는 방법을 모르겠습니다.
지금까지 나는 다음을 생각해 냈습니다.
for s r in $(pure-pw list) | {print $1 $2}; do pure-quotacheck -u $s -d $r; done
하지만 난 이해해
예상치 못한 마커 'r' 근처에 구문 오류가 있습니다.
$ pure-pw list
def /home/def/./
또한 pure-pw 목록의 출력에서 "/./"를 제거해야 합니다.
답변1
한 줄을 변수로 분할하려면 다음을 사용할 수 있습니다 read
(비록 셸에서 텍스트로 작업할 때와 같이 많은 주의 사항이 있지만):
pure-pw list | while read s r; do pure-quotacheck -u "$s" -d "$r"; done
$r
이를 통해 호출하기 전에 처리를 수행할 수 있습니다 pure-quotacheck
.예를 들어삭제 제안한 대로 처리된 출력을 통해 이 작업을 수행 /./
할 수도 있습니다 .pure-pw
pure-pw list | sed 'sX/./$XX' | while read s r; do pure-quotacheck -u "$s" -d "$r"; done
바라보다문자열에 "http://"가 있으면 sed는 어떻게 대체합니까?거기 에 사용법 에 대한 설명 이 있습니다 sed
.