sitelink1 https://blog.naver.com/spdlqjdudghl/222442055397 
sitelink2 https://mkyong.com/java/how-to-execute-s...from-java/ 
sitelink3  
sitelink4  
sitelink5  
sitelink6  

특정 경로에 있는 Git 저장소에서 git 명령어를(reset) 실행해야 했다

ProcessBuilder 에서는 directory() 함수를 통해 쉘명령어를 실행할 경로를 지정할 수 있다

 

    public static void runProcessBuilder() throws IOException {

        

        String hashcode = "dddc6831400c354f71934aa83ee92343dabe0962";

        hashcode = "b3ce21a3b94adb888ad7b059576b3c055c80f95b";

        

        String[] command = new String[] {

                "git"

                ,"reset"

                ,"--hard"

                ,"\""+hashcode+"\""

                };

        

        ProcessBuilder pb = new ProcessBuilder(command);

        pb.directory(new File("D:\\3_WORK\\3_PRODUCT_SRC\\DOMAIN\\WORK_REPOSITORY\\"));

        pb.redirectErrorStream(true);

        Process proc = pb.start();

        try (BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream()))) {

            String line = null;

            StringBuffer lineSb = new StringBuffer();

            while ((line = br.readLine()) != null) {

                lineSb.append(line);

            }

            if (lineSb.length() > 0) { // Tomcat 또는 프로그램을 DOS Command 창에서 명령어

                System.out.println(lineSb); // 실행 결과를 출력

            } else { // 프로그램을 OS서비스로 등록하여 수행시 실행 결과 메세지를 취할 수 없으므로 임의로 완료 메세지 로깅

                System.out.println("nothings");

            }

        }

    }

 

 

 

번호 제목 글쓴이 날짜 조회 수
326 (Bard) the request was rejected because no multipart boundary was found file 황제낙엽 2023.08.23 729
325 (Bard) multipart/form-data 요청 처리를 위한 MultipartHttpServletRequest file 황제낙엽 2023.08.21 584
324 JPA 개요 황제낙엽 2023.07.25 710
323 javax.mail 샘플 몇가지 (테스트 수행전) 황제낙엽 2023.06.26 917
322 java 프로그램으로 회원가입용 인증 메일을 보내는 방법 (from naver / 테스트 성공) file 황제낙엽 2023.06.24 930
321 java 프로그램으로 회원가입용 인증 메일을 보내는 방법 (from bing / 테스트 실패) [1] 황제낙엽 2023.06.23 1045
320 base64 encode, decode 황제낙엽 2023.06.12 664
319 BASE64Encoder, BASE64Decoder 의 deprecated 황제낙엽 2023.06.12 937
318 문자의 ASCII 값 테이블 - String.charAt() file 황제낙엽 2023.03.28 803
317 java로 알파벳 대소문자를 랜덤으로 조합하는 코드 만들어줘 (ChatGPT) 황제낙엽 2023.03.28 659
316 ajax 로 post 데이터를 servlet 으로 전달 받기 (with nexacro) [1] secret 황제낙엽 2023.02.26 0
315 구글 클라우드 비전 API 사용하기 (Google Cloud Vision API) 황제낙엽 2023.02.22 691
314 람다식(Lambda Expressions in Java) file 황제낙엽 2022.12.03 1225
313 ConcurrentLinkedQueue와 LinkedBlockingQueue 황제낙엽 2022.04.06 829
312 java.util.Queue file 황제낙엽 2022.04.06 9007
311 숫자형 클래스 BigInterger (int, long 범위 초과) 황제낙엽 2022.01.16 1089
310 LocalDate.now() 오늘 날짜 황제낙엽 2022.01.16 660
309 [java.lang.ProcessBuilder] “매개변수가 틀립니다” 혹은 ”Cannot run program” 황제낙엽 2021.10.15 1030
» 특정 경로에서 쉘 명령어 실행하기 (ProcessBuilder) 황제낙엽 2021.10.08 799
307 HP-UX, IBM-AIX 황제낙엽 2021.06.23 1083