Ich habe ein Python-Skript, das URLs aus pastebin.com/archive zieht, die Links zu Pasten haben (die nach pastbin.com in der URL acht zufällige Ziffern haben). Meine aktuelle Ausgabe ist eine .txt mit den folgenden Daten darin, ich möchte nur die Links zu Pasten vorhanden (Beispiel: http://pastebin.com///Y5JhyKQT) und keine Links zu anderen Seiten wie pastebin.com/tools). Dies ist so, dass ich wget setzen kann, um jede einzelne Paste zu ziehen.Extrahieren von Zeilen mit einer bestimmten Anzahl von Zeichen
Die einzige Möglichkeit, dies zu tun, ist ein Bash-Skript zu schreiben, um die Anzahl der Zeichen in jeder Zeile zu zählen und nur Zeilen mit 30 Zeichen genau zu halten (das ist die Länge der URLs zu Pasten verbinden).
Ich habe keine Ahnung, wie ich etwas mit grep oder awk implementieren würde, vielleicht mit einer while do-Schleife? Jede Hilfe wäre willkommen!
http://pastebin.com///tools
http://pastebin.com//top.location.href
http://pastebin.com///trends
http://pastebin.com///Y5JhyKQT <<< I want to keep this
http://pastebin.com//=
http://pastebin.com///>
Sie können es einfach in Python tun, so dass Sie nicht Lärm haben müssen, um es später mit wget zu überprüfen. Siehe meine Antwort für Python unten. Schreiben Sie nicht in die Datei, wenn es länger als die Länge ist. –
Die Zeile, von der Sie sagen, dass sie enden soll, endet in 'Y5JhyKQT' und hat deshalb am Ende keine 8 zufälligen Ziffern, also nehme ich an, Sie meinen' 8 zufällige alphanumerische Zeichen'. Wie würdest du das dann von der Zeile unterscheiden, die du nicht davor haben willst, die in "Trends" endet, wenn es in einem 8-stelligen Wort wie "trendiger" statt "Trends" endet? Oder ist das nur ein völlig irrelevanter Ablenkungsmanöver, den du da reingeworfen hast und alles, was wirklich zählt, ist die Zeilenlänge von 30 Zeichen? –