Hallo zusammen,
ich will aus einem riesigen Ordner, gefüllt mit HTML-Dateien, die in der Struktur...[src=html4strict]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="de" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="imagetoolbar" content="no" />
<meta name="resource-type" content="document" />
<meta name="distribution" content="global" />
<meta name="copyright" content="2000, 2002, 2005, 2007 phpBB Group" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<title>INHALTVOMTITLETAG</title>
[/src]...vorliegen, gerne die title-Tags in die Dateinamen bekommen. Da das ganze ein Forenrip ist, sind die Dateinamen derzeitig auf die Foren- und Thread-IDs beschränkt, das ist nicht sonderlich hilfreich so.
Bisher fand ich jenes Skript:
[src=perl]
for f in *.html;
do
title=$( grep -oP '(?<=<title>).*(?=<\/title>)' "$f" )
mv -i "$f" "${title//[^a-zA-Z0-9\._\- ]}".html
done[/src]
...und zwar hier: https://superuser.com/questions/546009/renaming-html-files-according-to-title-tag. Das funktioniert großartig, [KW]mv[/KW] macht da aber glaub ich Probleme. Bestehen nämlich mehrere HTML-Dokumente, in denen der Inhalt das title-Tags der gleiche ist, werden die nach den ersten umbenannten Dateien ebenfalls den angegebenen Kriterien entsprechen, gelöscht.
Was fehlt [KW]mv[/KW], dass das nicht passiert und dem ganzen automatisch eine Art von Durchzählung angehängt? Meinetwegen gerne #### vierstellig von Anfang an und dann halt hochgezählt. Wo finde ich Rat, sowas nachzugucken, ich weiß leide rnichtmal wie ich da weitergoogeln sollte .
Hat jemand ggf. die Skriptanpassung parat ?
M.
ich will aus einem riesigen Ordner, gefüllt mit HTML-Dateien, die in der Struktur...[src=html4strict]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="de" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="imagetoolbar" content="no" />
<meta name="resource-type" content="document" />
<meta name="distribution" content="global" />
<meta name="copyright" content="2000, 2002, 2005, 2007 phpBB Group" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<title>INHALTVOMTITLETAG</title>
[/src]...vorliegen, gerne die title-Tags in die Dateinamen bekommen. Da das ganze ein Forenrip ist, sind die Dateinamen derzeitig auf die Foren- und Thread-IDs beschränkt, das ist nicht sonderlich hilfreich so.
Bisher fand ich jenes Skript:
[src=perl]
for f in *.html;
do
title=$( grep -oP '(?<=<title>).*(?=<\/title>)' "$f" )
mv -i "$f" "${title//[^a-zA-Z0-9\._\- ]}".html
done[/src]
...und zwar hier: https://superuser.com/questions/546009/renaming-html-files-according-to-title-tag. Das funktioniert großartig, [KW]mv[/KW] macht da aber glaub ich Probleme. Bestehen nämlich mehrere HTML-Dokumente, in denen der Inhalt das title-Tags der gleiche ist, werden die nach den ersten umbenannten Dateien ebenfalls den angegebenen Kriterien entsprechen, gelöscht.
Was fehlt [KW]mv[/KW], dass das nicht passiert und dem ganzen automatisch eine Art von Durchzählung angehängt? Meinetwegen gerne #### vierstellig von Anfang an und dann halt hochgezählt. Wo finde ich Rat, sowas nachzugucken, ich weiß leide rnichtmal wie ich da weitergoogeln sollte .
Hat jemand ggf. die Skriptanpassung parat ?
M.
Zuletzt bearbeitet: