![스크립트가 실행될 때 쉘 스크립트의 경로 이름에 추가 문자가 포함됩니다.](https://linux55.com/image/115656/%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EA%B0%80%20%EC%8B%A4%ED%96%89%EB%90%A0%20%EB%95%8C%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%9D%98%20%EA%B2%BD%EB%A1%9C%20%EC%9D%B4%EB%A6%84%EC%97%90%20%EC%B6%94%EA%B0%80%20%EB%AC%B8%EC%9E%90%EA%B0%80%20%ED%8F%AC%ED%95%A8%EB%90%A9%EB%8B%88%EB%8B%A4..png)
저는 MTP 장치의 콘텐츠 백업을 부분적으로 자동화하는 스크립트를 작성 중입니다. 계속하기 전에 nemo에서 폴더를 여는 줄을 추가하여 문제의 폴더에 액세스할 수 있는지 확인하려고 했습니다. 스크립트는 다음과 같습니다.
#!/bin/bash
echo "mtp://[usb:[BUS],[DEVICE]]"
echo -n "Enter BUS: "
read BUS
echo -n "Enter DEVICE: "
read DEVICE
nemo /run/user/1000/gvfs/mtp:host=%5Busb%3A$BUS%2C$DEVICE%5D/Internal%20shared%20storage/
첫 번째 "echo" 줄은 사용자 참조용으로만 사용됩니다.
$BUS 및 $DEVICE가 입력된 값으로 올바르게 대체되어 MTP 장치 루트에 대한 올바른 경로가 생성되었지만 다음 오류 메시지가 표시되면서 다음 폴더가 올바르게 해석되지 않았습니다.
"Could not find "mtp://[usb:002,036]/Internal%2520shared%2520storage".
Please check the spelling and try again.
[OK]"
두 번 추가된 "25"는 어디에서 왔습니까? 스크립트가 nemo에서 올바른 경로를 열도록 이 문제를 어떻게 해결할 수 있습니까?
답변1
%20을 공백으로 바꾸고 경로 문자열 주위에 큰따옴표를 사용하라는 Archemar의 제안으로 내 문제가 해결되었고 폴더가 올바르게 열리게 되었습니다.