ファイルの内容内のテキストなど、さまざまな形式の日付スタンプを持つ2つのデータファイルがあります。 2つの日付を比較し、シェルスクリプトの日付に基づいてファイルから別のファイルに変数を印刷したいと思います。 MATLABにスクリプトがあり、これをシェルスクリプトで実行したいと思います。 1つのファイルの日付形式はです2017-01-01 12:00:00
。他のファイルの場合です20170101 1200
。変数の場合は、日付と比較し、file1
fromの列が印刷変数と一致することを確認してください。file1
file2
答え1
パラメータ置換を使用すると、通常のbashでこれを行うことができます。
dateA='2017-01-01 12:00:00'
dateB='20170101 1200'
tmpA=${dateA//[-:]/} # remove hyphens and colons
# next expansion excludes last 2 characters
[[ "${tmpA:0:-2}" == "$dateB" ]] && echo same || echo different
same
以前のbashバージョンは負の長さをサポートしていませんが、次のものを使用できます。${tmpA:0:${#tmpA}-2}