Поиск файлов, соответствующих другому имени файла в другой папке

Если вы удерживаете нажатой клавишу «Windows» (Called «Super» в мире Linux), вы получите надпись на рабочем столе, содержащую наиболее распространенные ярлыки.

[d3 ] Некоторые из наиболее распространенных включают:

Ctrl + Alt + Arrow Key: изменяет рабочее пространство. Super + S: Обзор рабочей области Ctrl + Alt + L: блокировка компьютера Alt + Tab: Windows Switcher Super: открывает Dash

Среди команд, которые вы хотите:

Ctrl + Shift + N [ ! d22]

И Ctrl + D оба работают.

Эквивалент run будет D , и удерживание Shift сфокусирует пусковую установку.

1
задан 29 September 2014 в 02:10

2 ответа

Создайте простой файл copyFile.sh следующим образом:

#!/bin/bash
kodeFile=$(basename $1 | sed -e 's/_code_c/_kode_c/')
modeFile=$(basename $1 | sed -e 's/_code_c/_mode_m/')
find FolderB -name "$modeFile" -exec cp {} FolderC/$modeFile \;
find FolderB -name "$kodeFile" -exec cp {} folderD/$kodeFile \;

сохраните его, например, в /home/yourUser/bin.

Измените разрешение на copyFile.sh:

chmod +x /home/yourUser/bin/copyFile.sh

Откройте файл /home/yourUser/.bashrc и добавьте в конце эту строку:

PATH=$PATH:/home/yourUser/bin

сохраните его и перезагрузите:

source .bashrc

Попробуйте следующее:

find FolderA -name "*_code_c*" -exec copyFile.sh {} \;

Протестировано на lubuntu 12.04

1
ответ дан 24 May 2018 в 03:19

Я считаю, что это именно то, что вы описываете.

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

Как использовать

Как всегда, скопируйте сценарий ниже, введите соответствующие пути, в этом случае немало, соответствующие идентифицирующие строки и сохраните их как reorg.py .

Запустите его командой:

python3 /path/to/reorg.py

Сценарий

#!/usr/bin/env python3

import os
import shutil

# --------------------------------------------------------
# existing files directories
original_dir = "/path/to/original_files"
equals_dir = "/path/to/files_with_name_variants"
# original identifying string
id_string = "code" 
# variants + their desired destination
var_1 = "node"; vardir_1 = "/path/to/directory/where_first_variants_shouldbestored"
var_2 = "kode"; vardir_2 = "/path/to/directory/where_second_variants_shouldbestored"

# ---------------------------------------------------------

origs = []

for root, dirs, files in os.walk(original_dir):
    for name in files:
        if id_string in name:
            origs.append(name.replace(id_string, ""))

for root, dirs, files in os.walk(equals_dir):
    for name in files:
        if var_1 in name:
            if name.replace(var_1, "") in origs:
                shutil.copyfile(root+"/"+name, vardir_1+"/"+name)
        if var_2 in name:
            if name.replace(var_2, "") in origs:
                shutil.copyfile(root+"/"+name, vardir_2+"/"+name)
1
ответ дан 24 May 2018 в 03:19

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

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