Flytta filnamn in i filen

Permalänk
Medlem

Flytta filnamn in i filen

Hej!

Jag undrar om det finns något program som kan hjälpa mig med det jag vill utföra.

Jag vill flytta in filnamnet till ett specifikt ställe i filen. Filerna har ändelsen .nfo, dessa kan öppnas i t.ex.
wordpad.

Nedan finns ett exempel på en fil öppnad i wordpad. Låt oss säga att filen heter Film 1.nfo.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<movie>
<title>7 X - Lika barn leka bäst</title>

Jag vill ersätta texten mellan <title> och </title> med filnamnet.

I det här exemplet ska alltså raden bli <title>Film 1</title>

Går det här att lösa?

Tack för all ev. hjälp

MVH

Jonas

Permalänk
Entusiast

Du beskriver ju redan hur du löser uppgiften, eller så har du glömt beskriva vad det du vill ha ut av den här frågan.
Med informationen du har gett, kan jag komma fram till följande lösning:

Öppna filen i wordpad, notepad eller annan texteditor.
Ändra texten mellan <title> -taggarna.
Spara och avsluta.

Visa signatur

Bästa programmen till Linux - v2.0
Linux-guide: Val av grafisk miljö. (Att välja distribution).
-
Everyone should have a SGoC in their systems (SGoC: SysGhost on a Chip)

Permalänk
Medlem

Tack!

Jodå, jag vet allt hur man gör det manuellt, men det handlar om ca. 5000 filer.

Jag borde naturligtvis varit tydligare med att jag vill ha ett program som gör det här åt mig.

Någon som vet ett sådant program?

MVH

Jonas

Permalänk
Entusiast
Skrivet av Lilak:

Tack!

Jodå, jag vet allt hur man gör det manuellt, men det handlar om ca. 5000 filer.

Jag borde naturligtvis varit tydligare med att jag vill ha ett program som gör det här åt mig.

Någon som vet ett sådant program?

MVH

Jonas

Aha. Ja först tänkte jag: -"det är väl int så svårt... du bara..." och där kom jag på att det är Windows det handlar om, så det var inte "Du bara..." längre
Ja, här krävs det lite mer handpåläggning och några program.

Det jag kom att tänka på i första hand, är det oerhört smidiga programmet AutoHotKey. En avancerad scriptnings-miljö, som passar perfekt till uppgiften. Det kräver dock att du sätter dig ner och lär dig skriva AHK-skript: AHK Manual.
VARNING: Många spel (WoW, BF3, med flera) ser AutoHotKey som "hacking-mjukvara", och kan resultera i permanenta banns om det upptäcks. Anledningen är att AHK är så avancerad, att folk har lyckats skripta upp rätt kompetenta "bottar" i det.

Nästa förslag är att du lär dig Windows egna PowerShell.
Det är Microsofts svar till Unix-världens sh/bash -miljö.

En mer semi-manuell metod, som jag ibland tillämpar när jag inte har tillgång att använda andra metoder, är Excel.
Ja du läste rätt. Excel. Skapa ett kalkylblad för filernas innehåll, och ett annat blad för filnamnen. Sedan är det bara att länka in filnamnen in i lämpliga xml-fält och sedan exportera det aktuella kalkylbladet till en ny xml-fil.
Fast frågan är om inte detta blir mer besvär än vad det hjälper i ditt fall. Det är dock bara du som kan avgöra det.

EDIT:
Ytterligare ett förslag, om du vill ha smidigheten från Unix-världen direkt under Windows, vilket gör den här typen av uppgifter mcyket enklare, är Cygwin.
Linux för windows, skulle man kunna kalla det för. Du kan installera i princip en hel Linux-miljö under Windows, och få alla fördelrana med det. Till och med att du kan knöka in hela X-miljön om du önskar.

Visa signatur

Bästa programmen till Linux - v2.0
Linux-guide: Val av grafisk miljö. (Att välja distribution).
-
Everyone should have a SGoC in their systems (SGoC: SysGhost on a Chip)

Permalänk
Medlem

går ju att skriva ett sådant program på ett par minuter

Visa signatur

ʕ•͡ᴥ•ʔ

Permalänk
Medlem
Skrivet av SysGhost:

EDIT:
Ytterligare ett förslag, om du vill ha smidigheten från Unix-världen direkt under Windows, vilket gör den här typen av uppgifter mcyket enklare, är Cygwin.
Linux för windows, skulle man kunna kalla det för. Du kan installera i princip en hel Linux-miljö under Windows, och få alla fördelrana med det. Till och med att du kan knöka in hela X-miljön om du önskar.

Jag fick faktiskt ett script från någon på XBMC.org. Jag installerade CygWin, men får inte scriptet att fungera.

När jag kör scriptet får jag ett syntaxfel. Tyvärr har jag inte kunskapen att avgöra om jag gör fel, eller om det är fel på scriptet.

Om någon har lust att försöka hjälpa mig få igång scriptet i cygwin, vore det kanon. Säg till så ska jag skriva ner hur jag försökte själv.

Om någon har lust att skriva ett script till Windows, skulle jag bli väldigt glad.

Tack

Jonas

Permalänk
Entusiast
Skrivet av Lilak:

Jag fick faktiskt ett script från någon på XBMC.org. Jag installerade CygWin, men får inte scriptet att fungera.

När jag kör scriptet får jag ett syntaxfel. Tyvärr har jag inte kunskapen att avgöra om jag gör fel, eller om det är fel på scriptet.

Om någon har lust att försöka hjälpa mig få igång scriptet i cygwin, vore det kanon. Säg till så ska jag skriva ner hur jag försökte själv.

Om någon har lust att skriva ett script till Windows, skulle jag bli väldigt glad.

Tack

Jonas

Är koden inte alltför lång, kan du kasta upp scriptet i ett inlägg mellan CODE-taggar. (Se detta forums text-editor. Knappen ser ut så här:

)
Är koden däremot väldigt lång och otymplig, kan du istället använda dig av tjänsten PasteBin.
Klistra in koden hos PasteBin, bekräfta, kopiera den publika http-länken du får, och ge oss den.

Visa signatur

Bästa programmen till Linux - v2.0
Linux-guide: Val av grafisk miljö. (Att välja distribution).
-
Everyone should have a SGoC in their systems (SGoC: SysGhost on a Chip)

Permalänk
Skrivet av Lilak:

Hej!

Jag undrar om det finns något program som kan hjälpa mig med det jag vill utföra.

Jag vill flytta in filnamnet till ett specifikt ställe i filen. Filerna har ändelsen .nfo, dessa kan öppnas i t.ex.
wordpad.

Nedan finns ett exempel på en fil öppnad i wordpad. Låt oss säga att filen heter Film 1.nfo.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<movie>
<title>7 X - Lika barn leka bäst</title>

Jag vill ersätta texten mellan <title> och </title> med filnamnet.

I det här exemplet ska alltså raden bli <title>Film 1</title>

Går det här att lösa?

Tack för all ev. hjälp

MVH

Jonas

Är det där hela filen, eller har den några sluttagar med?

Visa signatur

[MSI SpeedSter-FA4][Pentium M 770@160*16][X800GTO2 LE][A-Data PC4300 2GB][Maxtor 300GB S-ATA 16MB][NEC ND-3520A IDE][Thermaltake Xaser Tsunami Svart Aluminium][Hiper Type R 480W] //Betty (Kung Pow) [Outdated]

Permalänk

https://www.dropbox.com/s/u5941ym5f66euac/renamer.zip

gjorde ett program för det, förutsatt att:

<movie> har en sluttag

Varje fil har bara en movie -> titel par

att filändelsen ska vara med i den nya titeln.

Visa signatur

[MSI SpeedSter-FA4][Pentium M 770@160*16][X800GTO2 LE][A-Data PC4300 2GB][Maxtor 300GB S-ATA 16MB][NEC ND-3520A IDE][Thermaltake Xaser Tsunami Svart Aluminium][Hiper Type R 480W] //Betty (Kung Pow) [Outdated]

Permalänk
Medlem
Skrivet av SysGhost:

Är koden inte alltför lång, kan du kasta upp scriptet i ett inlägg mellan CODE-taggar. (Se detta forums text-editor. Knappen ser ut så här: http://www.sweclockers.com/forum/images/editor/code.gif
)
Är koden däremot väldigt lång och otymplig, kan du istället använda dig av tjänsten PasteBin.
Klistra in koden hos PasteBin, bekräfta, kopiera den publika http-länken du får, och ge oss den.

Här är koden.

#!/bin/bash for fname in *.nfo do fnroot=`echo "$fname" | sed 's/\(.*\)\..*/\1/'` sed -i 's@<title>.*<\/title>@<title>'"$fnroot"'<\/title>@' "$fnroot"'.nfo' echo "$fnroot"'...Modified' done

Skrivet av Betty (Kung Pow):

https://www.dropbox.com/s/u5941ym5f66euac/renamer.zip

gjorde ett program för det, förutsatt att:

<movie> har en sluttag

Varje fil har bara en movie -> titel par

att filändelsen ska vara med i den nya titeln.

Det där programmet gjorde nästan det jag ville. Tyvärr måste jag ändra alla filändelser, från .nfo till .inf, för att det ska fungera. Och jag skulle gärna slippa att filändelsen kommer med.

Tack så mycket för all hjälp!

MVH

Jonas

Permalänk
Skrivet av Lilak:

Här är koden.

#!/bin/bash for fname in *.nfo do fnroot=`echo "$fname" | sed 's/\(.*\)\..*/\1/'` sed -i 's@<title>.*<\/title>@<title>'"$fnroot"'<\/title>@' "$fnroot"'.nfo' echo "$fnroot"'...Modified' done

Det där programmet gjorde nästan det jag ville. Tyvärr måste jag ändra alla filändelser, från .nfo till .inf, för att det ska fungera. Och jag skulle gärna slippa att filändelsen kommer med.

Tack så mycket för all hjälp!

MVH

Jonas

ändrade programmet, ladda ner från
https://www.dropbox.com/s/u5941ym5f66euac/renamer.zip
igen så borde det vara precis som du vill ha det!

Visa signatur

[MSI SpeedSter-FA4][Pentium M 770@160*16][X800GTO2 LE][A-Data PC4300 2GB][Maxtor 300GB S-ATA 16MB][NEC ND-3520A IDE][Thermaltake Xaser Tsunami Svart Aluminium][Hiper Type R 480W] //Betty (Kung Pow) [Outdated]

Permalänk
Inaktiv
Skrivet av SysGhost:

(...)

Nästa förslag är att du lär dig Windows egna PowerShell.
Det är Microsofts svar till Unix-världens sh/bash -miljö.

(...)

...Fast kanske en promille så kraftfullt som sh/bash

Permalänk
Medlem

Tack för din hjälp!

Filen som förut hette, renamer.exe, heter nu renamer.pdb.
Ska jag starta det här på något annorlunda sätt, eller är det du som har missat någon liten detalj?

MVH

Jonas

Permalänk
Skrivet av Lilak:

Tack för din hjälp!

Filen som förut hette, renamer.exe, heter nu renamer.pdb.
Ska jag starta det här på något annorlunda sätt, eller är det du som har missat någon liten detalj?

MVH

Jonas

Sry, var väl lite trött, så vlade fel fil, men borde vara åtgärdat nu, så bara ladda ner det igen

Visa signatur

[MSI SpeedSter-FA4][Pentium M 770@160*16][X800GTO2 LE][A-Data PC4300 2GB][Maxtor 300GB S-ATA 16MB][NEC ND-3520A IDE][Thermaltake Xaser Tsunami Svart Aluminium][Hiper Type R 480W] //Betty (Kung Pow) [Outdated]

Permalänk
Medlem
Skrivet av Betty (Kung Pow):

Sry, var väl lite trött, så vlade fel fil, men borde vara åtgärdat nu, så bara ladda ner det igen

Det där löste det. Nu fungerar det till full belåtenhet.

Tusen tack för all hjälp! Hoppas att jag nån gång kan hjälpa dig.

MVH

Jonas