Linux에서 .dump 명령을 실행하는 방법은 무엇입니까? [폐쇄]

Linux에서 .dump 명령을 실행하는 방법은 무엇입니까? [폐쇄]

Java에서 sqlite 데이터베이스의 덤프 파일을 생성하고 싶지만 Linux에서 다음 명령을 실행할 수 없습니다. Windows에 대한 도움을 받고 Linux를 사용해 보았는데 터미널이 하나밖에 없는 것 같습니다. 그렇다면 Linux에서 이 명령을 작성하는 방법을 누가 도와줄 수 있습니까?

  Process p = Runtime.getRuntime().exec("cmd /c start /b sqlite3 db.sqlite .dump > dump.txt");

Linux에서의 구현은 다음과 같습니다.

String command= "/usr/bin/xterm"; 
Runtime rt = Runtime.getRuntime();  
Process p = rt.exec(new String[]{command , "/home/ubuntu/test.sqlite .dump > /home/ubuntu/newsql111.sql"});

누구든지 내 오류가 어디에 있는지 말해 줄 수 있나요?

답변1

xterm은 필요하지 않지만 sqlite3은 필요합니다. 그게 바로 당신이 달리고 있는 거죠

/usr/bin/xterm /home/ubuntu/test.sqlite .dump > …

정말 달려야 할 때

/bin/sh -c "sqlite3 /home/ubuntu/test.sqlite .dump > …"

귀하의 데이터베이스가 .../test.sqlite라고 가정합니다. Java 세부 사항은 귀하에게 맡기겠습니다.

답변2

해결책을 찾았습니다.

 Process p = rt.exec(new String[]{"/bin/sh", "-c", "sqlite3 /home/ubuntu/testingdb.sqlite .dump > /home/ubuntu/success11.sql"});

sqlite 데이터베이스의 전체 덤프 파일을 제공합니다.

관련 정보