bash4: 파일 경로가 큰따옴표 안에 있으면 cp 명령이 파일을 볼 수 없습니다.

bash4: 파일 경로가 큰따옴표 안에 있으면 cp 명령이 파일을 볼 수 없습니다.

다음 터미널 출력을 고려하십시오(.sh 파일 내).

kagura@mylaptop1 : ~
=> sudo cp -a "$_source/*.txt" $_destination/Other/
Password:
cp: /home/myuser/*.txt: No such file or directory
08:06:13 Thu Jun 14
kagura@mylaptop1 : ~
=> sudo cp -a $_source/*.txt $_destination/Other/
08:06:33 Thu Jun 14
kagura@mylaptop1 : ~

큰따옴표를 사용하면 실패하고, 큰따옴표 없이 실행하면 성공합니다.

경로나 파일에 공백이 있을 수 있으므로 경로/파일에 관해서는 큰따옴표가 안전하다는 인상을 받았습니다.

당신의 도움에 감사드립니다

답변1

*확장 하지 않고 폴더 안의 파일 이름까지 확장합니다 "*".

하지만 귀하의 "인상"은 정확합니다. 100% 확실하지 않은 부분에는 공백이 없어 모든 부분을 인용해야 합니다.

인용된 부분과 인용되지 않은 부분을 혼합할 수 있습니다.

sudo cp -a "$_source"/*.txt "$_destination"/Other/

관련 정보