특정프로그램을 실행해서 명령을 내리는

jjjjrr의 이미지

안녕하세요
제가만드는프로그램에서
특정프로그램을 실행해서 명령을 내리는
코딩을 하려구합니다
예를 들어서여
mysql클라이언트를 실행시켜서
명령줄에서
특정테이블의 데이타를 가져오게하는
쿼리문을 만들어 실행시키고싶읍니다
어떻게하면될까요
질문을 한번드렸었는데여
popen()함수를 사용하라는대답을 들었읍니다
근데 이함수는
프로그램을 옵션을 추가해서 실행만시키는것같은데여
실행시키고
위에서와같이
쿼리문까지날리려면 어떻게해야되는지
조언부탁드립니다
mysql api사용은 할수있으나 현재알고싶은부분은
위의질문부분입니다
mysql클라이언트를 조족하는것이 아니라
다른프로그램에 적용하기위해서 예를 든것뿐입니다

jemiro의 이미지

popen으로 쿼리 날릴수 있는데요.

jjjjrr의 이미지

안녕하세요
답변감사합니다
popen으로 쿼리까지날리수있다구여....
죄송하지만 사용예를 하나만 들어주시면 안될까요
이부분을 알려구 한참을 헤메고있읍니다
조언좀 부탁드립니다
즐거운하루되세요

cdpark의 이미지

popen은 단방향이니 힘들고... pipe를 쓰셔야겠군요.

pipe/fork/exec..

jjjjrr의 이미지

안녕하세요
저의질문에서 mysql클라이언트프로그램과같이
다른프로세스를 실행시키는것은 아는데여
실행시키고나서
명령줄에서 쿼리를 날리는 방법을 모르는겁니다
가능한가요..?
조금만더구체적으로 함수를 어떻게쓰야
쿼리를 날리수있나요..?
부탁합니다

sh.의 이미지

-bash-2.05b$ echo "SHOW DATABASES" | mysql --batch -u id -p

이런식으루 되는걸 말씀하시는건가요?

jjjjrr의 이미지

답변감사합니다
제가 님의 명령을 이해하지를 못했읍니다
제가하려구하는것은
일단
mysql을 실행시키구여
그래서 mysql클라이언트가 실행되면
그때 "SHOW DATABASES" 이든 다른쿼리든지
mysql클라이언트에게 날리는겁니다
그러면
mysql클라이언트가 실행을 하겠죠
이렇게
제가만든프로그램에서
mysql을 실행시키고
쿼리까지 날리는것이
제가하려구하는겁니다
부탁합니다

다즐링의 이미지

프로그래밍 랭기쥐가 어떤것인지는 모르겠습니다만.

일단 시스템적으로는 echo "SQL" | mysql -uusername database -ppassword

를 하면 SQL 을 mysql 에 접속해서 사용합니다.

SQL 을 show database 로 바꾸셔도 되겠죠.

두번할려면 사이에 ; 를 끼우시면 됩니다.

echo "show databses; show databases;" | mysql -uusername database -ppassword

만약 파이썬이라면

popen2 모듈을 사용하십시오.

jjjjrr wrote:
답변감사합니다
제가 님의 명령을 이해하지를 못했읍니다
제가하려구하는것은
일단
mysql을 실행시키구여
그래서 mysql클라이언트가 실행되면
그때 "SHOW DATABASES" 이든 다른쿼리든지
mysql클라이언트에게 날리는겁니다
그러면
mysql클라이언트가 실행을 하겠죠
이렇게
제가만든프로그램에서
mysql을 실행시키고
쿼리까지 날리는것이
제가하려구하는겁니다
부탁합니다

------------------------------------------------------------------------------------------------
Life is in 다즐링

소타의 이미지

mysql --help

mysql -s -e "쿼리들1;쿼리들2"

하면 탭으로 분리되어 값이 출력됩니다.....

jjjjrr의 이미지

안녕하세요
답변감사합니다
가르쳐주신대로 함수를 사용하자면
이렇게하면되나요
fp = popen("ls -al", "r");
이것을
popen("mysql" , "-s -e "쿼리들1;쿼리들2" ");
이런식으로사용하면
원하는결과를 얻을수있을까요
죄송하지만 한번더부탁드립니다

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.