파일
-
자바 상대경로 지정하여 어디서나 경로 참조가능하게 하기2015.10.04
-
파일 경로 찾기2013.07.17
exiftool 로 사진 파일 EXIF 정보 다수의 사진 한꺼번에 일괄 업데이트 수정 하기
exiftool을 사용하여 사진 exif 정보가 없는 다수의 사진 파일을 하나씩 수정하고 추가하자니 많은 시간이 걸려서 검색해본 결과 bat 파일로 추가하는 방법을 시도해보았다.
참고한 블로그 링크 글. exiftool 파일 셋팅은 아래 블로그 글을 참고하면 된다. C:\Windows 폴더에 파일만 옮겨두면 끝
https://blog.naver.com/dirail/220040581902
https://blog.naver.com/dirail/220074853011
일단 exiftool 파일을 받아야 하고 bat 파일을 메모장에 생성하면 된다. 참고로 exiftoolGUI 도 설치해둔다면 exif 값을 쉽게 알아볼 수 있다. 어떤 값을 추가해야할지 보고 메모장에 명령어만 추가해주면 된다.
https://nenunena.tistory.com/50
위 배치 자동화 글을 토대로 명령어만 수정해보았다. 대략적인 설명은 사진 파일에 모델명을 갤럭시로 하고 싶다면 1을 입력, 애플로 하고 싶다면 2를 입력하면된다. 그리고 원하는 시간대도 형식에 맞게 입력하면 모델명과 시간이 새로 추가 또는 수정된다. 카메라 초첨 밝기 위치정보 등 나머지 값들은 임의로 집어넣었다. 빨간색으로 된 값들은 모두 위 exiftool GUI 에서 보고 추가한 값들이다. 참고로 현재 *.jpg 파일만 가능한 듯 싶다. png는 안됐음.
:top @echo. @set /p dir="사진 폴더를 이 창 위로 드래그 하고 엔터치세요:" @%dir:~1,2% @cd %dir% @echo. :camera @set /p model="추가할 모델(ex. 갤럭시는 1, 애플은 2: " @set /p date="날짜수정 (ex. 2019:05:01 13:45:32) : " @echo. @if "%model%" == "1" ( exiftool -Make="samsung" -Model="Galaxy S23 Ultra" -ModifyDate="%date%" -GPSLatitudeRef="North" -GPSLatitude="37.511102°" -GPSLongitudeRef="East" -GPSLongitude="126.995283°" -ExposureTime="1/40" -FNumber="2.4" -ISO="400" -ShutterSpeedValue="2" -ApertureValue="2.4" -BrightnessValue="4.24" *.jpg ) else if "%model%" == "2" ( exiftool -Make="Apple" -Model="iPhone 14 Pro" -ModifyDate="%date%" -GPSLatitudeRef="North" -GPSLatitude="37.511102°" -GPSLongitudeRef="East" -GPSLongitude="126.995283°" -ExposureTime="1/40" -FNumber="2.4" -ISO="400" -ShutterSpeedValue="2" -ApertureValue="2.4" -BrightnessValue="4.24" *.jpg ) @echo 작업 완료. :more @set /p more="더 작업하시겠습니까?(y or n) " @if "%more%"=="y" goto top @if "%more%"=="n" goto exit @goto more :exit @echo. 아무키나 누르면 종료됩니다. @pause >nul @exit |
실행 후 사진이 들어있는 폴더를 드래그하여 cmd 창에 두면 자동으로 경로가 뜨고 엔터를 친다. 그 다음엔 원하는 모델에 따라 1 또는 2 를 치고 그 다음에는 원하는 시간을 형식에 맞게 입력하면 된다.
그럼 위와 같이 다수의 파일이 업데이트 되었다는 메시지와 함께 작업 완료. 참고로 완료 후 원본파일은 자동으로 백업이 된다. 끝에 jpg_original 확장자로 변경되면서 백업되는데 확장자를 다시 jpg 바꿔주면 원본 사진을 볼 수 있다.
'지식메모 > 꿀팁' 카테고리의 다른 글
윈도우11 메모장 열었을 때 다수의 탭이 열리는 경우 해결책 (0) | 2024.02.11 |
---|---|
노트북 듀얼 모니터 연결시 모니터 해상도가 FHD (1920 x 1080p)이상 설정되지 않을 때 해결 방법 (0) | 2023.10.30 |
랜포트 없는 노트북 유선 랜 인터넷 연결하기 (HP ZBook Studio G10 모델 기준) (0) | 2023.10.03 |
HP 노트북 Fn 펑션키 반대로 셋팅하기 [HP ZBook Studio 16인치 G10 모델] (3) | 2023.07.31 |
안드로이드 폰에서 pdf 파일 수정하는 방법(구글 드라이브,삼성 노트, Microsoft 365 앱) (0) | 2023.07.04 |
자바 상대경로 지정하여 어디서나 경로 참조가능하게 하기
현재 프로젝트에 lib 폴더가 있고 start.exe 파일을 참조하게 하고 싶다면
File path = new File("lib"+File.separator+"start.exe");
그런데 프로젝트 실행할 땐 잘되는데 실행가능한 jar 파일로 export 하여 해보니 안된다..ㅠㅠ
'지식메모 > JAVA' 카테고리의 다른 글
자바 이미지 파일 포함하여 프레임바 아이콘 변경 후 실행가능한 jar 파일로 생성하기 (0) | 2015.10.15 |
---|---|
자바 스윙 프레임바 아이콘 바꾸기 (0) | 2015.10.12 |
자바 JTextArea 스크롤바 자동으로 설정하기 (0) | 2015.10.04 |
JAVA JPasswordField 암호 값 가져오기 (0) | 2015.09.20 |
문자열에서 숫자만 추출하기 (0) | 2015.09.02 |
안드로이드 공유하기 기능쓰기
이미지를 캡쳐해서 저장한 후 공유하기를 통해 이미지를 공유하고 싶었다.
이 공유하기 기능을 사용하면 카톡 페북 미투데이 등등 메뉴가 저절로 나온다.신기방기
Intent intentSend = new Intent(Intent.ACTION_SEND); intentSend.setType("image/*"); intentSend.putExtra(Intent.EXTRA_STREAM, Uri.parse(파일경로)); startActivity(Intent.createChooser(intentSend, "공유")); |
특정파일을 공유하기 위해 다음과 같이 사용했다.
공유하기 버튼을 만들어 그 안에 집어넣었다.
Intent it3=getIntent(); //파일명을 가져오기 위한 인텐트(에디트텍스트에서 이름입력받은 걸 파일명으로 쓰기 위해)
String str_name=it3.getStringExtra("it3_name"); //이름을 가져온다.
File fileRoute = null;
fileRoute = Environment.getExternalStorageDirectory(); //sdcard 파일경로 선언
File files = new File(fileRoute,"/temp/"+str_name+"-.jpeg"); //temp폴더에 이름으로 저장된 jpeg파일 경로 선언
if(files.exists()==true) //파일유무확인
{
Intent intentSend = new Intent(Intent.ACTION_SEND);
intentSend.setType("image/*");
//이름으로 저장된 파일의 경로를 넣어서 공유하기
intentSend.putExtra(Intent.EXTRA_STREAM, Uri.parse(fileRoute+"/temp/"+str_name+"-.jpeg"));
startActivity(Intent.createChooser(intentSend, "공유")); //공유하기 창 띄우기
}else{
//파일이 없다면 저장을 해달라는 토스트메세지를 띄운다.
Toast.makeText(getApplicationContext(), "저장을 먼저 해주세요", Toast.LENGTH_LONG).show();
}
소스양식버전
Intent it3=getIntent(); //파일명을 가져오기 위한 인텐트(에디트텍스트에서 이름입력받은 걸 파일명으로 쓰기 위해) String str_name=it3.getStringExtra("it3_name"); //이름을 가져온다. File fileRoute = null; fileRoute = Environment.getExternalStorageDirectory(); //sdcard 파일경로 선언 File files = new File(fileRoute,"/temp/"+str_name+"-.jpeg"); //temp폴더에 이름으로 저장된 jpeg파일 경로 선언 if(files.exists()==true) //파일유무확인 { Intent intentSend = new Intent(Intent.ACTION_SEND); intentSend.setType("image/*"); //이름으로 저장된 파일의 경로를 넣어서 공유하기 intentSend.putExtra(Intent.EXTRA_STREAM, Uri.parse(fileRoute+"/temp/"+str_name+"-.jpeg")); startActivity(Intent.createChooser(intentSend, "공유")); //공유하기 창 띄우기 }else{ //파일이 없다면 저장을 해달라는 토스트메세지를 띄운다. Toast.makeText(getApplicationContext(), "저장을 먼저 해주세요", Toast.LENGTH_LONG).show(); }
'지식메모 > 안드로이드 Android' 카테고리의 다른 글
안드로이드 dip px 변환하기 (0) | 2013.07.23 |
---|---|
안드로이드 버튼 여러개 쓰기 (0) | 2013.07.21 |
안드로이드 숫자 키보드 띄우기 (0) | 2013.07.20 |
안드로이드 EditText에 텍스트 집어넣기 (0) | 2013.07.20 |
안드로이드 카메라 호출해서 이미지 크롭하기 (0) | 2013.07.20 |
파일 경로 찾기
리눅스에서 해당 파일이 어딨는지 궁금하다면
locate 파일명
이라고 쳐주면 어딨는지 나온다.
apache2.conf 라는 파일을 찾기위해
locate apache2.conf 를 수행한 모습.
2가지 파일의 경로가 나온다.
만약 새로 프로그램을 깔고 어딨는지 찾으려고 했는데 안 나온다면
updatedb
를 한번 수행해주고 다시 locate 파일명 을 해주면 나타난다.
'지식메모 > 리눅스' 카테고리의 다른 글
vim 문자열 찾기 (0) | 2013.09.02 |
---|---|
리눅스 운영체제 비트 확인하기 (0) | 2013.07.26 |
루트 권한 폴더를 내 계정 권한폴더로 바꾸기 (0) | 2013.07.17 |
루트 계정으로 작업하기 (0) | 2013.07.17 |
PlayFramework : Ooops - Something went wrong! Exception:java.io.IOException: Cannot write parent directory: Path(/) of /helloworld 메세지 해결 (0) | 2013.04.16 |