CleanUpWiki_v14 - itnett/FTD02N GitHub Wiki

C:\WikiMigration>git clone https://github.com/itnett/FTD02N/blob/main/ C:\WikiMigration\git\wiki_repo Cloning into 'C:\WikiMigration\git\wiki_repo'... remote: Enumerating objects: 6, done. remote: Counting objects: 100% (6/6), done. remote: Compressing objects: 100% (3/3), done. remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0) Receiving objects: 100% (6/6), done.

C:\WikiMigration>cd C:\WikiMigration\git\wiki_repo

C:\WikiMigration\git\wiki_repo>dir Volume in drive C is Windows Volume Serial Number is DA48-71B2

Directory of C:\WikiMigration\git\wiki_repo

27.08.2024 10:53

. 27.08.2024 10:14 .. 27.08.2024 10:53 29 Home.md 27.08.2024 10:53 4 test.md 2 File(s) 33 bytes 2 Dir(s) 107 244 191 744 bytes free

C:\WikiMigration\git\wiki_repo>echo "# Test Page" > TestPage.md

C:\WikiMigration\git\wiki_repo>git add TestPage.md

C:\WikiMigration\git\wiki_repo>git commit -m "Added TestPage.md for verification" [master f00440f] Added TestPage.md for verification 1 file changed, 1 insertion(+) create mode 100644 TestPage.md

C:\WikiMigration\git\wiki_repo>git push origin master Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 16 threads Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 348 bytes | 348.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0) To https://github.com/itnett/FTD02N/blob/main/ be479df..f00440f master -> master

C:\WikiMigration\git\wiki_repo>

Flott, da fungerer alt som det skal!

La meg justere skriptet slik at det automatisk håndterer:

  1. Opprettelse av unike README.md-filer for hvert skript: Hver skriptfil som migreres til https://github.com/itnett/FTD02N.git vil få en tilhørende README.md-fil med et unikt navn, slik at de ikke overskrives.

  2. Publisering av Wiki-sider: Oppdaterte Wiki-sider vil automatisk publiseres til https://github.com/itnett/FTD02N/blob/main/, med lenker til relevante skript i koden repoet.

Jeg skal justere og presentere det oppdaterte skriptet slik at du kan kjøre det med full funksjonalitet.

Oppdatert Skript

Se skriptet herpython', r'^Se skriptet hersql', r'^Se skriptet hershell'] for pattern in executable_patterns: if re.search(pattern, code_block, re.MULTILINE): return True return False

Funksjon for å migrere kodeblokker og opprette unike README.md-filer

def migrate_code_blocks(input_dir, output_dir): if not os.path.exists(output_dir): os.makedirs(output_dir)

for root, _, files in os.walk(input_dir):
    for file in files:
        if file.endswith('.md'):
            file_path = os.path.join(root, file)
            with open(file_path, 'r', encoding='utf-8') as f:
                content = f.read()

            # Finn alle kodeblokker
            code_blocks = re.findall(r'```.*?```', content, re.DOTALL)

            for index, block in enumerate(code_blocks):
                if is_executable_code_block(block):
                    # Bestem filtype basert på innholdet
                    if '[Se skriptet her](https://github.com/itnett/FTD02N/blob/main/Python/CleanUpWiki_v14_4.py)bash' in block or '[Se skriptet her](https://github.com/itnett/FTD02N/blob/main/ShellScripts/CleanUpWiki_v14_5.sh)sql' in block:
                        extension = 'sql'
                        folder = "SQLScripts"
                    elif '[Se skriptet her](https://github.com/itnett/FTD02N/blob/main/Makefiles/CleanUpWiki_v14_6.makefile)

input.yml

# URL til den originale Wiki-repoen som skal klones
wiki_repo_url: "https://github.com/itnett/FTD02H-N.wiki.git"

# Sti til katalogen hvor den klonede Wiki-repoen skal lagres midlertidig
dump_directory: "C:\\WikiMigration\\git\\code_dump"

# URL til den nye kode-repoen hvor skript skal lagres
code_repo_url: "https://github.com/itnett/FTD02N"

# Sti til katalogen hvor skriptene fra Wiki-repoen skal lagres
code_repo_directory: "C:\\WikiMigration\\git\\code_repo"

Kjør dette oppdaterte skriptet, og det skal nå håndtere alt vi har diskutert. Det vil opprette unike README.md-filer for hvert skript, oppdatere URL-er i wiki-repoet, og publisere både kode- og wiki-repoet til GitHub.

⚠️ **GitHub.com Fallback** ⚠️