Shell Concat 구성 파일의 문자열

Shell Concat 구성 파일의 문자열

이렇게 config.cfg를 만들었습니다.

DB_USERNAME='abcdef'
DB_PASSWORD='1234'

그런 다음 내 shell.sh가 구성을 읽고 문자열을 연결하려고 시도했습니다.

#! /bin/sh
source config.cfg
DB_CONN="${DB_USERNAME}/${DB_PASSWORD}"
echo $DB_CONN

예상한 대로, abcdef/1234그러나 대체가 이루어진 /1234f것처럼 보입니다 /1234top abcdef.

내가 뭘 잘못했나요?

답변1

두 가지 실수

  1. source같은 명령 은 없습니다 /bin/sh. 어쩌면 #!/bin/bash첫 번째 줄에 쓰거나 . ./config.cfg?
  2. config.cfgWindows 시스템에서 파일을 생성/편집하고 파일(바이너리 모드)을 Unix/Linux 시스템에 복사했기 때문에 스크립트가 실패합니다 .

dos2unix config.cfg즐겨 사용하는 Unix/Linux 기반 편집기에서 파일을 실행하거나 편집하여 파일을 삭제할 수 있습니다.^M각 줄의 끝에 표시되는 문자입니다.

관련 정보