Как переименовать много файлов, используя префиксный ID?

У меня 103 директории. Эти каталоги называются PJA_XXX, где XXX - номер от 71 до 174. Внутри каждой папки PJA_XXX имеется файл, находящийся в следующем пути: PJA_XXX/results/variants/variants.vcf.

Я хочу переименовать файл variants.vcf, добавив префикс каталога PJA_XXX, в котором он находится. Таким образом, ожидаемым результатом будет PJA_XXX_variants.vcf.

Я думаю, что мог бы сделать это с помощью цикла оболочки, но я не знаю, как взять имя папки PJA_XXX для того, чтобы переименовать файл.

0
задан 14 April 2021 в 10:48

1 ответ

После того, как я получил ту же ошибку, очистите-ppa ppa: oibaf/графические драйверы исправили ее!

sudo apt install ppa-purge

sudo ppa-purge ppa: oibaf/graphics-drivers

-121--914309-

Решение по первой ссылке, предложенное N0rbert в разделе комментариев первоначального сообщения, не сработало. Однако это расширение Opera здесь работало довольно хорошо, даже без необходимости установки расширения Chrome для Webex. Я только что выбрал Windows10 + Chrome из расширения, и теперь я могу подключиться к Webex от Opera на машине Ubuntu.

-121--913855-

Можно использовать переменную цикла и ссылаться на нее с помощью $ { loop _ variable _ name } в команде.

Использовать...

for directory_name in PJA_*; do
    echo "Processing ${directory_name}."
    mv "${directory_name}/results/variants/variants.vcf" "${directory_name}/results/variants/${directory_name}_variants.vcf"
done

... для изменения структуры файла, как...

PJA_001
└── results
    └── variants
        └── variants.vcf
PJA_002
└── results
    └── variants
        └── variants.vcf
PJA_003
└── results
    └── variants
        └── variants.vcf
PJA_004
└── results
    └── variants
        └── variants.vcf
PJA_005
└── results
    └── variants
        └── variants.vcf

... в структуру файла вот так...

PJA_001
└── results
    └── variants
        └── PJA_001_variants.vcf
PJA_002
└── results
    └── variants
        └── PJA_002_variants.vcf
PJA_003
└── results
    └── variants
        └── PJA_003_variants.vcf
PJA_004
└── results
    └── variants
        └── PJA_004_variants.vcf
PJA_005
└── results
    └── variants
        └── PJA_005_variants.vcf
3
ответ дан 23 April 2021 в 23:23

Другие вопросы по тегам:

Похожие вопросы: