여러 변수가 있는 Bash 스크립트를 사용하여 파일에 날짜를 추가하는 방법은 무엇입니까?

여러 변수가 있는 Bash 스크립트를 사용하여 파일에 날짜를 추가하는 방법은 무엇입니까?

내 스크립트는 다음과 같으며 이를 이해하는 방법을 기억할 수 없습니다.

#!/bin/bash
input=$1
output=$2
cp $input $output_$(date +%m%d%y)

목표는 다음과 같이 스크립트를 실행하는 것입니다

/path/script.sh /path/file_name /path/archive/

아카이브 파일은 다음과 같습니다. /path/archive/file_name_090718

답변1

대괄호 ${output}로 묶으면 밑줄과 날짜를 연결할 수 있습니다. {}아니면 그냥 사용해도 됩니다 cp $1 $2_$(date +%m%d%y).

스크립트 파일

#!/bin/bash
input=$1
output=$2
cp ${input} ${output}_$(date +%m%d%y)

용법:

$ ls
file_name script.sh
$./script.sh file_name archive
$ ls
archive_090718 file_name script.sh

답변2

정답은 교정장치입니다!

그게 제가 하는 일이에요. 고양이 가죽을 벗기는 가장 좋은 방법은 아니거든요…

#!/bin/bash
input=$1
output=$2
cp $input ${output}_$(date +%m%d%y)
$ ./script /usr/tmp/file_name /usr/tmp/arch/file_name
$ ls -l /usr/tmp/arch
-rw-rw-r-- 1 xxxxxx yyyyyyy 5 Sep  7 12:06 file_name_090718

관련 정보