![libmtp를 사용하여(USB를 통해) MTP 장치에서 파일 복사](https://linux55.com/image/100436/libmtp%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC(USB%EB%A5%BC%20%ED%86%B5%ED%95%B4)%20MTP%20%EC%9E%A5%EC%B9%98%EC%97%90%EC%84%9C%20%ED%8C%8C%EC%9D%BC%20%EB%B3%B5%EC%82%AC.png)
현재 프로젝트에서 파일(비디오)을 복사하는 방법을 알아내려는 프로젝트가 있습니다.MTPUSB를 통한 장치.
위키에서 이라는 오픈 소스 구현이 있다는 것을 알게 되었습니다 libmtp
. 이거 읽고 써본 사람 있어? 예제나 튜토리얼이 있나요? 저는 우분투를 실행하기 위해 MATE를 사용하는 것을 선호합니다.
Unix 계열 시스템용 미디어 전송 프로토콜의 무료 오픈 소스 구현을 사용할 수 있습니다 libmtp
. 이 라이브러리에는 다양한 소스의 제품 및 장치 ID가 포함되어 있으며 일반적으로 다른 MTP 지원 소프트웨어에서 사용됩니다.
답변1
필수 패키지를 설치해야 합니다.
sudo apt-get install libmtp-dev mtp-tools mtpfs
장치를 연결한 다음 실행하면 mtp-detect
이 명령이 장치에 대한 일부 정보를 감지하고 제공합니다.
mtp-connect
그런 다음 실행하여 mtp-folders
폴더와 해당 ID를 표시하십시오.
mtp-files
파일/폴더가 ID와 함께 표시 됩니다 .
목록 파일을 만들려면 다음을 실행하세요.
mtp-files > file_list.txt
명령을 사용하여 mtp-getfile
장치에서 컴퓨터로 파일을 복사하십시오. 예가 있습니다.데비안 위키:
file_list.txt에는 이제 다음과 같은 항목이 포함됩니다.
File ID: 81
Filename: WP_20161029_16_26_49_Pro.jpg
File size 936160 (0x00000000000E48E0) bytes
Parent ID: 12
Storage ID: 0x00010001
Filetype: JPEG file
"상위 ID"는 스마트폰에 있는 파일이 있는 폴더와 유사합니다. 따라서 특정 파일을 얻으려면 다음과 같은 작업을 수행해야 합니다.
mkdir "12"
mtp-getfile "81" "12/WP_20161029_16_26_49_Pro.jpg"