스크립트를 통해 gdrive 명령줄 애플리케이션을 사용하려고 합니다. 출력은 공백으로 구분되며 (예: 다운로드/삭제/등)을 사용하여 gdrive
출력의 첫 번째 항목(파일 이름)을 추가로 처리 해야 합니다 .command2
출력은 gdrive list --many options
다음과 같습니다
1zioW5nrKdWPz-UiaGla1KJkcMf-OUGfR test.sh bin 396.0 B 2019-07-24 03:28:26
그래서 나도 그래
gdrive list --many options | cut -w -f1 | xargs -I {} gdrive delete {}
하지만 이렇게 하면 오류가 발생합니다.
Failed to get file: googleapi: Error 404: File not found: 1zioW5nrKdWPz-UiaGla1KJkcMf-OUGfR., notFound
xargs가 끝에 점을 추가하는 이유와 이를 중지하는 방법은 무엇입니까?
대안으로 (read A; gdrive delete $A)
via 대신 출력을 파이핑해 보았지만 xargs
출력은 동일합니다.
hexdump
문제를 진단하려면(@michael-homer의 제안에 따라) - 대신 에 출력을 파이프할 때 gdrive delete
(끝에 추가하여 xargs -I {} printf '<<%s>>\n' {} | hexdump -C
) 출력은 다음과 같습니다.
00000000 3c 3c 31 7a 69 6f 57 35 6e 72 4b 64 57 50 7a 2d |<<1zioW5nrKdWPz-|
00000010 55 69 61 47 6c 61 31 4b 4a 6b 63 4d 66 2d 4f 55 |UiaGla1KJkcMf-OU|
00000020 47 66 52 3e 3e 0a |GfR>>.|
00000026