rclone
파일 크기를 언급하지 않고 파일 목록을 얻고 싶습니다 . 어떻게 해야 하는지 찾을 수 없어서 rclone
awk나 비슷한 것을 사용하여 제거할 생각입니다. 내 출력은 다음과 같습니다
59183070 fileserver/transfer_kimberly_2022-12-18_0558 (1).zip
3690 fileserver/transfer_kimberly_2022-12-18_0558 (1).zip - Shortcut.lnk
35961190 fileserver/transfer_2023-06-27_0814.zip
7803667 fileserver/woodproject.zip
7437905920 Them/Data/Before_20230526132130642.FDB
1064525824 Them/Data/Updating_20220705231152059.FDB
1064525824 Them backup/Data/Updating_20220706231124156.FDB
1064525824 Them backup/Data/Updating_20220705231152059.FDB
1064525824 Them backup/Data/Updating_20220706231124156.FDB
7004362 test.zip
7004362 test (1).zip
7803667 37939 37/Data/Updating_20220706231124156.FDB
7803667 37939/Data/Updating_20220706231124156.FDB
첫 번째 남은 숫자는 파일 크기입니다. 이 출력을 원합니다
fileserver/transfer_kimberly_2022-12-18_0558 (1).zip
fileserver/transfer_kimberly_2022-12-18_0558 (1).zip - Shortcut.lnk
fileserver/transfer_2023-06-27_0814.zip
fileserver/woodproject.zip
Them/Data/Before_20230526132130642.FDB
Them/Data/Updating_20220705231152059.FDB
Them backup/Data/Updating_20220706231124156.FDB
Them backup/Data/Updating_20220705231152059.FDB
Them backup/Data/Updating_20220706231124156.FDB
test.zip
test (1).zip
37939 37/Data/Updating_20220706231124156.FDB
37939/Data/Updating_20220706231124156.FDB
나는 space
첫 번째 /
. 그러나 space
첫 번째 디렉터리나 파일 이름은 상황을 복잡하게 만듭니다. 도와 주셔서 감사합니다
답변1
데이터가 행 기반인 것 같습니다. 게다가 패턴은 "0개 이상의 공백, 하나 이상의 숫자, 하나의 공백”. 이러한 줄을 편집하는 도구 중 하나는 다음과 같습니다 sed
.
sed -E 's/^[[:space:]]*[[:digit:]]+[[:space:]]//'
저는 문자 클래스( [[...]]
)를 사용했지만 리터럴 문자 범위를 사용할 수도 있습니다.
sed -E 's/^ *[0-9]+ //'
파이프라인에서 이를 사용하거나 sed
파일을 처리하도록 할 수 있습니다.
cmd_a | sed... | cmd_b
sed... {file}
답변2
lsf
하위 명령을 사용하면 rclone
파일 및 디렉토리를 나열할 수 있지만 파일 크기는 나열할 수 없습니다. lsf
기본적으로 재귀적이지 않으므로 디렉토리 lsf -R
를 재귀적으로 나열해야 하는 경우 사용할 수 있습니다.
다음 경로를 원한다면문서(목차 없음) 을 lsf -R —-files-only
사용하여 출력 형식을 조정할 수도 --format
있으며 고급 데이터 필터링을 위한 여러 옵션이 있습니다( 참조 rclone lsf —-help
).
rclone
다운스트림 유틸리티의 구문 분석을 용이하게 하려면 하위 명령의 JSON 출력을 사용하는 것이 좋습니다 lsjson
.
또는 lsjson
대신 사용하는 경우 (잘 알려진 JSON 처리 도구)를 사용하여 반환된 JSON 배열의 각 요소에서 데이터를 추출합니다 .ls
lsf
jq
Path
rclone lsjson -R someremote:somepath | jq -r '.[].Path'
재귀 는 lsjson
기본적으로 활성화되어 있지 않으므로 -R
여기서는 옵션과 함께 사용하겠습니다.
디렉토리 나열을 피하려면 IsDir
항목이 다음과 같은 배열 항목 만 선택하십시오 false
.
rclone lsjson -R someremote:somepath | jq -r 'map(select(.IsDir|not))[].Path'
(...또는 을 사용하세요 lsjson -R --files-only
. 와 동일합니다 lsf
.)
참고로 lsjson
다음 예제와 동일하게 보이는 JSON 개체 배열이 반환됩니다(데이터를 모델로 사용).
{
"Path": "Them/Data/Before_20230526132130642.FDB",
"Name": "Before_20230526132130642.FDB",
"Size": 7437905920,
"MimeType": "application/octet-stream",
"ModTime": "2023-09-04T20:10:54.367101898+02:00",
"IsDir": false
}
답변3
펄 사용하기
~$ perl -pe 's/^\s*\d+\s//;' file
음악을 활용하세요(이전 Perl_6)
~$ raku -pe 's/^ \s* \d+ \s //;' file
위 내용은 Perl과 Raku로 작성된 답변입니다. Perl/Raku -pe
플래그는 자동 인쇄를 통한 라인별 실행을 나타냅니다( -e
독립 실행형 코드의 경우, -p
라인별 자동 인쇄의 경우, 즉 코드는 명시적이 print
거나 put
필요하지 않고 입력의 각 라인에 적용됩니다). Raku의 주석에는 \d
ASCII와 유니코드 숫자가 포함됩니다. Raku에서만 ASCII를 사용하려면 <+[0..9]>
.
입력 예:
59183070 fileserver/transfer_kimberly_2022-12-18_0558 (1).zip
3690 fileserver/transfer_kimberly_2022-12-18_0558 (1).zip - Shortcut.lnk
35961190 fileserver/transfer_2023-06-27_0814.zip
7803667 fileserver/woodproject.zip
7437905920 Them/Data/Before_20230526132130642.FDB
1064525824 Them/Data/Updating_20220705231152059.FDB
1064525824 Them backup/Data/Updating_20220706231124156.FDB
1064525824 Them backup/Data/Updating_20220705231152059.FDB
1064525824 Them backup/Data/Updating_20220706231124156.FDB
7004362 test.zip
7004362 test (1).zip
7803667 37939 37/Data/Updating_20220706231124156.FDB
7803667 37939/Data/Updating_20220706231124156.FDB
예제 출력:
fileserver/transfer_kimberly_2022-12-18_0558 (1).zip
fileserver/transfer_kimberly_2022-12-18_0558 (1).zip - Shortcut.lnk
fileserver/transfer_2023-06-27_0814.zip
fileserver/woodproject.zip
Them/Data/Before_20230526132130642.FDB
Them/Data/Updating_20220705231152059.FDB
Them backup/Data/Updating_20220706231124156.FDB
Them backup/Data/Updating_20220705231152059.FDB
Them backup/Data/Updating_20220706231124156.FDB
test.zip
test (1).zip
37939 37/Data/Updating_20220706231124156.FDB
37939/Data/Updating_20220706231124156.FDB
https://perldoc.perl.org/perlre
https://docs.raku.org/언어/regexes