이전 질문에 이어 다음과 같습니다.
이 파일의 모든 파일 이름을 기본 이름으로 바꾸는 다음 명령을 얻습니다.
grep -o -h -E '[A-Za-z0-9:./_-]+\.(png|jpg|gif|tif|css)' |\
sed "s:[a-zA-z0-9]*/::" `find . -name '*.css' -or -name '*.js'`
처리된 각 파일에 대해 이 명령의 출력을 소스 파일에 다시 저장하려면 어떻게 해야 합니까?
답변1
오래된 질문에 대한 답변이 늦었지만 이것이 OP가 찾고 있는 답변이라고 생각합니다.
SEDCMD="/[A-Za-z0-9:./_-]+\.(png|jpg|gif|tif|css)/ s:[a-zA-z0-9]*/::"
find . -name '*.css' -or -name '*.js' -exec sed -i "$SEDCMD" '{}' ';'
답변2
다음과 같은 루프를 시도해 보세요.
find . -name '*.css' -or -name '*.js' | while read filename; do
: $filename is the original file name
done