mysql 테이블 단위 내용 분리

DB 데이터베이스|2023. 8. 3. 20:57
300x250
sed -n -e '/DROP TABLE IF EXISTS `goods`/,/UNLOCK TABLES/p' mysqlback_20230803.sql > goods.sql;

위 명령어는 주어진 디비명.dump 파일에서 '테이블명'이라는 텍스트를 포함한 DROP TABLE 문부터 UNLOCK TABLES 문까지의 데이터를 추출하여 디비명.테이블명.dump 파일로 저장하는 작업을 수행합니다.

여기서 각 부분의 의미는 다음과 같습니다:

  • sed: 텍스트 스트림을 필터링하고 변환하는 데 사용되는 유닉스 명령어인 'sed'를 실행합니다.
  • -n: 기본 출력을 비활성화합니다. 즉, 텍스트가 처리되지 않은 경우 출력되지 않습니다.
  • -e: 스크립트를 지정하여 명령어를 실행합니다.
  • '/DROP TABLE.*테이블명/,/UNLOCK TABLES/p': 디비명.dump 파일에서 'DROP TABLE'과 '테이블명'이라는 문자열 사이의 모든 행을 찾아서 'UNLOCK TABLES'가 나오기 전까지의 행들과 함께 출력합니다.
  • 디비명.dump: 원본 데이터가 있는 파일명으로, 이 파일에서 데이터를 추출하고 처리합니다.
  • > 디비명.테이블명.dump: 추출한 데이터를 디비명.테이블명.dump 파일로 리다이렉션하여 저장합니다.

이렇게 하면 '디비명.테이블명.dump' 파일에 '테이블명'이라는 문자열을 포함하는 DROP TABLE 문과 그 다음 행들이 저장됩니다. 만약 해당 문자열이 존재하지 않으면 아무런 데이터도 파일에 저장되지 않습니다. 따라서 실제 사용하기 전에 반드시 '디비명', '테이블명' 등을 실제 데이터베이스 및 테이블 이름으로 수정하여 사용하시기 바랍니다.

300x250

댓글()

ubuntu ffmpeg 썸네일 이미지 저장

300x250

 

<?
// 비디오 입력 및 저장이미지 경로 설정
$video_file = "/var/www/master/mobile/modyeye/videos/day.mp4";
$thum_file =  "/var/www/master/mobile/modyeye/videos/thum/day.png";

// 1. ffmpeg 명령어로 비디오 가로 세로 크기 가져오기
$command = 'ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 ' . escapeshellarg($video_file);
$size= shell_exec($command);	
$size = str_replace("\n", "", $size);


// 2. ffmpeg 명령어로 설정된 크기와 시간으로 이미지를 저장하기
$time = "00:00:00.000";
$cmd = "ffmpeg -i $video_file -ss $time -s $size $thum_file";
shell_exec($cmd);  
?>
300x250

댓글()

php - ubuntu 동영상 썸네일

300x250

먼저 우분투에서 동영상 썸네일 추출을 위해서는

ffmpeg 라는 프로그램을 설치해야 합니다.

 

당연히 설치전에는 root로 로그인 해야 겠죠.

아래 sudo -s를 사용해서 root 로그인 합시다.

sudo -s

 

아래 쉘커맨드를 입력하면 ffmpeg를 설치 합니다.

경고가 뜨면 Y 눌러주면 됩니다.

apt update
apt install ffmpeg

 

비디오 파일 경로와, 만들어질 썸네일 이미지 경로 + 파일명을 넣어줍니다.

size는 썸네일 이미지 크기

time는 동영상에서 뽑아낼 시간

$video_file = "/var/www/master/upload/comment/test.mp4"
$thum_file = "/var/www/master/upload/comment/thum.png"

if(true) // 동영상 이라면
{
	$size = "960x512";
    $time = "00:00:00.000";
    $cmd = "ffmpeg -i $video_file -ss $time -s $size $thum_file";
    shell_exec($cmd);  
}

shell_exec를 사용하여 ffmpeg 프로그램을 사용하여 썸네일 이미지를 추출합니다.

 

기타로는 이미지 크기변경도 가능합니다.

ffmpeg -i input.jpg -vf scale=320:240 output_320x240.png
300x250

댓글()

CString 문자열 추출 함수 - Left, Mid, Right

300x250

 

 

 

※ 요약

Left  : CString 개체의 문자열에서 왼쪽을 기준으로 문자열 추출

Mid : CString 개체의 문자열에서 지정한 중간 부분의 문자열 추출

Right : CString 개체의 문자열에서 오른쪽을 기준으로 문자열 추출

 

 

※ 함수 원형 및 설명

CString  Left( int nCount ) const;
//nCount : 왼쪽 기준 추출할 문자의 수
//반환값 : 추출된 문자열을 포함하는 CString 임시 개체

CString  Right( int nCount ) const;
//nCount : 오른쪽 기준 추출할 문자의 수
//반환값 : 추출된 문자열을 포함하는 CString 임시 개체

CString  Mid( int nFirst ) const;
CString  Mid( int nFirst, int nCount ) const;
//nFirst : 추출을 시작할 문자열의 위치
//nCount : 추출할 문자의 수
//반환값 : 추출된 문자열을 포함하는 CString 임시 개체

 

 

※ 예제

#include <atlstr.h>		//CString

int main( )
{
	CString strDate( "2022-06-08" );
	
	CString strYear;
	CString strMonth;
	CString strDay;

	strYear = strDate.Left( 4 );
	strMonth = strDate.Mid( 5, 2 );
	strDay = strDate.Right( 2 );
	
	printf( "%s년 %s월 %s일", strYear, strMonth, strDay );

	return 0;
}

 

 

300x250

댓글()