ファイル名に日付と時刻を追加したい。たとえば、次のようになります。08032016out.log.zip
これが私がやろうとしていることです:
_now=$(date +"%m_%d_%Y")
_file="$_nowout.log"
touch $_file.txt # creating new file with the timedate
datetimeを使用して新しいファイルを作成する方法は?
ベストアンサー1
という変数を作成しましたが、_now
という変数を参照しました_nowout
。この問題を回避するには、中かっこを使用して変数名を区切ります。
_now=$(date +"%m_%d_%Y")
_file="${_now}out.log"
touch "$_file.txt"
変数名の区切り文字がすでに存在しているため、その"$_file.txt"
ままにしておきます。.
疑わしい場合"${_file}.txt"
でも使用できます。
ボーナス1:${varname}
Grammarlyは実際にいくつかの便利な機能を提供します。文字列演算分離に加えて、変数も制限されます。
利点2:創造的なシェルエスケープと引用を使用して変数名を区別することもできます。変数と文字列リテラルを別々に引用するか(または)、または部分を引用しないままにすることができます(たとえば、file="$_now""out.log"
または)。最後に、変数名の後に単一の文字をエスケープできます。ただし、シェルの引用とエスケープ規則を正しく理解していない限り、これらの例を再利用することはお勧めできません。file="$_now"'out.log'
file=$_now"out.log"
file="$_now"out.log
file=$_now\out.log