서브쉘에 매개변수를 전달하는 방법

서브쉘에 매개변수를 전달하는 방법

합격이 가능한가요?데이터베이스 이름 지정수동으로 작성하지 않고 서브셸을 사용하시겠습니까?

mysqldump -u USERNAME -p DBNAME > "$(date +"%Y-%m-%d_%H-%M-%S")_DBNAME.sql"

답변1

여기에는 하위 쉘이 없지만 명령 대체( $(...))가 있습니다. DBNAME변수인 경우 다음을 사용할 수 있습니다.

DBNAME=mydatabase
mysqldump -u USERNAME -p "$DBNAME" > "$(date +"%F_%H-%M-%S")_$DBNAME.sql"

심지어

DBNAME=mydatabase
mysqldump -u USERNAME -p "$DBNAME" >"$(date +"%F_%H-%M-%S_$DBNAME.sql")"

또는

DBNAME=mydatabase
outfilename=$(date +"%F_%H-%M-%S_$DBNAME.sql")
mysqldump -u USERNAME -p "$DBNAME" >"$outfilename"

또는 그 변형.

관련 정보