Como eu adiciono uma data a um arquivo usando o script Bash com múltiplas variáveis?

0

Meu script está abaixo, não consigo lembrar como fazer isso fazer sentido.

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

O objetivo é executar o script da seguinte forma

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

O arquivo arquivado seria então /path/archive/file_name_090718

    
por Emile 07.09.2018 / 17:04

2 respostas

1

Quebra de ${output} em {} colchetes permite a concatenação do sublinhado e da data. Alternativamente, você poderia usar apenas cp $1 $2_$(date +%m%d%y) .

script.sh

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

Uso:

$ ls
file_name script.sh
$./script.sh file_name archive
$ ls
archive_090718 file_name script.sh
    
por 07.09.2018 / 18:02
0

A RESPOSTA É SUPORTE CURLY!

Foi assim que eu fiz; não é a maneira mais bonita de esfolar um gato ...

#!/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
    
por 07.09.2018 / 18:17