私のスクリプトは次のようになり、それを理解する方法を覚えていません。
#!/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