1行コマンドで複数のファイルを隠しフォルダにコピーし、名前を変更します。

1行コマンドで複数のファイルを隠しフォルダにコピーし、名前を変更します。

そのため、すべての.pngファイルをアイコンディレクトリにコピーして名前を変更しようとしました。

$ cp /opt/pt/art/{pka.png,pkt.png,pkz.png} ~/.local/icons/{application-x-pka.png,application-x-pkt.png,application-x-pkz.png}

ただし、次の出力エラーが発生します。

cp: target '/home/carl/.local/share/icons/application-x-pkz.png/..' is not a directory

どうすればいいですか?

ベストアンサー1

cp コマンドは複数の宛先を受け入れません。

$ for a in pka pkt pkz; do
    cp /opt/pt/art/${a}.png ~/.local/icons/application-x-${a}.png
done

おすすめ記事