Difference between revisions of "Change user in XML export"

From Organic Design wiki
m
(Add new oneliner)
Line 7: Line 7:
 
The Usernames are specified in the <nowiki><username></nowiki> tag, by default an xml export usually dumps the current revision not the history of an article;
 
The Usernames are specified in the <nowiki><username></nowiki> tag, by default an xml export usually dumps the current revision not the history of an article;
  
{{code|<PHP>
+
==Changing ''username'' and ''id''==
perl -ne 'BEGIN{$/=undef} s/(<username>)\w+?(<\/username>\s+?<id>)\d+?(<\/id>)/${1}WikiSysop${2}1${3}/g; ; print ' IN.xml > OUT.xml
+
{{code|<perl>
</PHP>
+
perl -ne 'BEGIN{$/=undef} s/(<username>)\w+?(<\/username>\s+?<id>)\d+?(<\/id>)/${1}WikiSysop${2}1${3}/g; ; print' IN.xml > OUT.xml
 +
</perl>
 
}}
 
}}
  
{{Info|1=Note: The <nowiki><timestamp>2008-12-03T09:01:22Z</timestamp></nowiki> field is also important. If it is at the current time then imports will be recorded in the recent changes. The unix command to mimic mediaWikis timestamp is;
+
==Changing ''timestamp'', ''username'' and ''id''==
 +
The <nowiki><timestamp>2008-12-03T09:01:22Z</timestamp></nowiki> field is also important. If it is at the current time then imports will be recorded in the recent changes.
 +
{{code|<perl>
 +
perl -ne 'BEGIN{$/=undef}
 +
$time = `datedate "+%Y-%m-%dT%H:%M:%SZ"`;
 +
s/(<timestamp>).+?(<\/timestamp>)/${1}${time}${2}/g;
 +
s/(<username>)\w+?(<\/username>\s+?<id>)\d+?(<\/id>)/${1}WikiSysop${2}1${3}/g;
 +
print' IN.xml > OUT.xml
 +
</perl>
 +
}}
 +
 
 +
The unix command to mimic mediaWikis timestamp is;
 
{{code|<BASH>date "+%Y-%m-%dT%H:%M:%SZ"</BASH>}}
 
{{code|<BASH>date "+%Y-%m-%dT%H:%M:%SZ"</BASH>}}
 
}}
 
}}

Revision as of 20:22, 2 December 2008

Procedure.svg Change user in XML export
Organic Design procedure

The Usernames are specified in the <username> tag, by default an xml export usually dumps the current revision not the history of an article;

Changing username and id

{{{1}}}

Changing timestamp, username and id

The <timestamp>2008-12-03T09:01:22Z</timestamp> field is also important. If it is at the current time then imports will be recorded in the recent changes.

{{{1}}}

The unix command to mimic mediaWikis timestamp is;

<BASH>date "+%Y-%m-%dT%H:%M:%SZ"</BASH>

}}