1つの変数に保存されているファイルをコピーするにはどうすればいいですか

1つの変数に保存されているファイルをコピーするにはどうすればいいですか

次のコードがあります。

PF=opt/N*.properties

PF 内には 2 つの値/OPT/NA.propertiesとがあります/OPT/NA2.properties

シェルスクリプトでこれら2つのファイルを別の場所にコピーするにはどうすればよいですか

cp $PF /opt/backup/

答え1

あなたの例だけに基づくと、単純なforループで十分です。

for myfile in ${PF}
do
  cp "${myfile}" /opt/backup/
done

答え2

PF=(opt/N*.properties)
cp "${PF[@]}" /opt/backup

for ループをスキップし、すべてのファイルを 1 つのコマンドでコピーします。この方法では、glob によって配列が作成され、シェルは上記の方法で配列内の要素を展開できます。

それでもforループを使いたい場合は、変数宣言を省略して次のようにします。for myfile in opt/N*.properties; do...

関連情報