[리눅스] mysql의 DB에 저장된 값을 쉘에서 불러서 사용하는법

dogspy의 이미지

db에 usr 라는 테이블이 있고

user | mail
-----------------
선영 | dd@hot.com
주희 | jsd@chol.com
.....

이런식의 테이블이 있는데

shell 프로그램으로 이 db 에 있는 mail 값으로

메일을 보내는 쉘 파일을 짜려고 합니다.

db에서 어떻게 해야 값을 긁어 올 수 있는지 자세히 좀 알려 주세요

이왕이면 db의 첨부터 끝까지 while 문 돌리는 방법에 대해서도 알려주세요.

메일 보내는 방법이 아니라 db에서 값을 긁어오는 부분을 모르겠습니다.

부탁드려요~

서지훈의 이미지

mysql --database=mysql -u root -pxxx -e "select * from user" | grep -o "[0-9a-zA-Z]*@[0-9a-zA-Z\.]*" 이걸 응용 하시면 원하는 값을 얻으실 수가 있을 겁니다.

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);

송효진의 이미지

쉘에서 사용하면 쉘 프로그램이지요.

php-cli, python, ruby 등등~

mr.lee의 이미지

쉘이 sh, bash 이런류를 말씀하시는거라면..
머.. 이런식으로 하시면 되겠지요.

#!/bin/bash

id="myid"
pw="mypw"
query="SELECT mail FROM usr"

result=`echo $query | mysql -u $id -p$pw $db`

for low in "$result"
do
  # $low 를 파싱하며 필요한 일을 한다. #
done