Linux

Linux에서 windows파일 shell명령MySQL dump오류 해결 방법

아이티제어 2022. 3. 18. 11:13

Unix (Linux)의 텍스트 New Line 의 문자가 PC와 Unix계열이 다른 관계로 

Shell 스크립트 가 windows에서 업로드 한것이 오류가 날때가 있다.

문론 FTP업로드 시에 자동으로 파일 타입을 바꿔주기도 하지만  sftp로 업로드경우에는 바꾸지 못할때가 있다.

 

이번에는 Editplus에 PC, Unix 변경 방법이 있어 해결을 하였다.

 

과거 PC 1997년도에  대학시절에  실험실에서 이와같은 원인으로 컴파일이 안되어 일일이 ^M  엔터를 모두  vi편집기로  :%s/^M//g 명령어로 하여 지워서 해결한적도 있었다..

 

아래는 소스코드 zmsoft_passpt.sh 파일  

echo 'hello'
BACKUP_DIR=/mnt/sdb2/MyDmp2023_03
TODAY=`date +%Y-%m-%d`
WEEKAGO=`date -d "-7 days" +%Y-%m-%d`
BACKUP_DB_DIR=$BACKUP_DIR/$TODAY

#rm -rf $BACKUP_DIR/${WEEKAGO}
rm -rf $BACKUP_DIR/${TODAY}

mkdir $BACKUP_DIR/$TODAY
mkdir $BACKUP_DB_DIR

#/usr/local/mysql4122/bin/mysqldump -u xe200a -p암호   --no-create-info --default-character-set=latin1 --databases zmsoft_passportkorea > $BACKUP_DB_DIR/zmsoft_passportkorea.sql



/usr/local/mysql4122/bin/mysqldump -u xe200a -p암호  --add-drop-table  --default-character-set=latin1 --databases zmsoft_passportkorea > $BACKUP_DB_DIR/zmsoft_passportkorea.sql

처음 windows PC형태일때 아래와같이 라인별로 에러가 여러번  발생하였다.

windwos PC파일의 오류\r\r등문자line별오류

 

수정전 PC 로보여진다.
수정후 "UNIX"로 보여진다. 
실행되었다.오늘 날짜 폴더와 폴더안에 백업 파일이 생성이되었다.~

MySQL DUMP하는것이 정상적으로 실행이되었다.