예를 들어dates라는 하위 디렉터리가 있습니다 09 January 2020
. 공백을 하이픈으로 바꾸기 위해 터미널 명령을 사용하여 모든 디렉터리의 이름을 바꿨습니다.
$ for i in *; do mv "$i" "`echo $i | sed -e 's, ,-,g'`"; done
이제 이름이 하위 디렉터리입니다 09-January-2020
.
날짜 순서를 반대로 하고 이름이 하위 디렉터리를 가져오고 싶습니다 2020-January-09
. 위와 동일한 for 루프를 사용하지만 다른 sed 명령을 사용하여 하위 디렉터리 이름의 날짜 형식 순서를 바꾸고 싶습니다.
답변1
sed
디렉터리의 새 이름을 만드는 데 사용됩니다 .
for d in *; do
echo mv -- "$d" "$(echo "$d" | sed -E 's/(.*)-(.*)-(.*)/\3-\2-\1/')"
done
브래킷 내의 일치하는 부품은 교체를 위해 역순으로 재사용됩니다. echo
테스트 후 첫 번째 것을 제거하십시오.