
Я хочу скопировать несколько файлов с одинаковыми именами из разных мест в одно и то же место (изменив их имена в соответствии с их исходным местоположением).
Например, я хочу скопировать,
/apple/test.txt
/banana/test.txt
/grape/test.txt
в
/fruits/apple_test.txt
/fruits/banana_test.txt
/fruits/grape_test.txt
Есть ли способ сделать это в Linux?
решение1
Вы можете использовать for
цикл:
#!/bin/bash
for fruit in apple banana grape; do
cp "/${fruit}/test.txt" "/fruits/${fruit}_test.txt"
done
Цикл выполняется три раза; каждый раз переменная fruit
принимает одно из трех значений apple
, banana
, и grape
. Для каждого фрукта он копирует исходный файл в целевой файл.