본문 바로가기

Study/linux

디렉토리에서 가장 최근 파일의 이름 바꾸기

디렉토리에서 가장 최근 파일 이름 바꾸는 법을 알아보자.

mv명령어를 이용하므로, 이름말고 위치를 바꿀 때도 동일하게 사용하면 된다.

 

 

ls -tr | tail -1 | xargs -I{}  mv {} new_name

 

 

해석:

  • ls -tr :
    • 시간(-t)을
    • 내림차순(-r)으로 정렬해서
    • 보여준다(ls)
  • |  tail -1 :
    • 앞 명령어로 나온 결과중에 ( | )
    • 맨 마지막 한 가지만 고른다 (tail -1)
  • |  xargs -I {} mv {} new_name :
    • 앞 명령어 결과를 이용하여 (|)
    • 다음 명령어의 인자로 전달한다 (xargs)
    • 전달하는 위치는 다음 변수가 있는 곳으로 한다 (-I, {}... {}는 변수 이름이고 변경 가능)
    • 전달받은 인자의 이름을 new_name으로 바꾼다 ( mv {} new_name)

 

참고 :

http://bahndal.egloos.com/577448

 

[bash: xargs] 앞 명령어의 출력 결과를 다음 명령어의 인자(argument)로 사용하기

xargs 명령은 두개 이상의 명령어를 조합할 때 아주 요긴하다. 앞 명령어의 결과를 다음 명령어의 입력으로 넘기는 파이프(|)와 함께 사용함으로써, 앞 명령어의 출력값을 다음 명령어의 인자(argument)로 넘길 수 있기 때문이다.예를 들어, ls 명령으로 파일 목록을 출력하고 여기서 .bak 파일만 골라 rm 명령으로 삭제하고 싶을 때 아래와 같은 형

bahndal.egloos.com

 

 

https://m.blog.naver.com/PostView.nhn?blogId=miyesno1&logNo=60017634547&proxyReferer=https%3A%2F%2Fwww.google.com%2F

 

[의미] find 조건 -exec ls -al {} \;

[펌] find 조건 -exec ls -al { }  \; 의 의미는 이렇습니다. -exec의 의미는 '조건을 가지고 찾은 파일들을 ...

blog.naver.com

 

https://superuser.com/questions/809593/is-it-possible-to-move-last-modified-files-using-ls-tail-and-mv

 

Is it possible to move last modified files using ls, tail and mv?

I want to move the last 3 modified files from a directory using bash commands. However, I noticed that I can use find in the following way: find . -type f -mtime -0.5 -print -exec mv {} /home/user/

superuser.com