파일이 있는데 이름을 로 지정하겠습니다 image.png
. 또한 다음과 같은 파일 폴더가 있습니다.
picture.png
file.png
screenshot.png
art.png
painting.png
등.
내가 하고 싶은 일은 폴더 안의 모든 파일을 로 바꾸는 것입니다 image.png
. 그러나 원래 이름은 유지하고 싶습니다(그래서 picture.png
여전히 호출되지만 picture.png
보면 image.png
.
image.png
폴더에 있을 필요는 없습니다.
지금까지 시도했지만 작동하지 않는 것 같습니다.
for file in 'folder'
do
cp -f 'image.png' $file
done
답변1
cp
당신이 원하는 것을해야합니다. 문제는 폴더를 반복하지 않는다는 것입니다. 변수 "folder"
의 내용을 사용하여 한 번만 반복 합니다 $file
. 다음과 같이 파일 와일드카드를 반복해 보세요.
for file in folder/*
do
cp -vf 'image.png' "$file"
done
오류를 확인하기 위해 더 자세한 출력을 얻을 수 있도록 하나를 추가했지만 -v
일단 올바른 결과를 얻은 후에는 그대로 둘 수 있습니다.