ワイルドカードなどにより複数のファイルをパターンで指定するのはLinuxの機能ではなくシェルの機能です。よってどのようなパターンを使えるかはシェルのマニュアルを見るとよいと思います。
bashを例にとるとご質問のようなことはbrace expansionで可能です。
bash
1# manを調べて・・・
2$ man bash
3...
4Brace Expansion
5 Brace expansion is a mechanism by which arbitrary strings may be gener‐
6 ated. This mechanism is similar to pathname expansion, but the file‐
7 names generated need not exist. Patterns to be brace expanded take the
8...長いので省略...
9# やってみる
10$ cp ${A}/{sample.log,*.txt} ${B}/.
ところでcpコマンドには
cp [OPTION]... [SOURCE]... [DIRECTORY]
という構文があります。ゆえに以下でもよいです。これならbrace expansionのような機能を持たないシェルであっても大丈夫ですね。これもcpのマニュアルに載っています。
cp ${A}/sample.log ${A}/*.txt ${B}/.
brace expansionのような機能は全てのシェルで必ず使えるわけではないと思います。一方上記のcpの構文はどのUnixのcpでも同じように動いてくれそうです。そういう意味では後者のやり方の方が望ましいといえる場合があるかも知れません。例えばインストールスクリプトのようなものは、あらゆる環境で動くことが保証できるような書き方の方が望まれると思います。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/22 20:35
2017/06/22 22:23