Mam ~ 800 plików .txt. Potrzebuję wyodrębnić nazwę każdego pliku i jedną linię wewnątrz pliku i wyeksportować go do nowego pliku .txt.
Linia, którą muszę skopiować, zawsze zaczyna się od „System Boot Time:”
Chciałbym, aby w nowym pliku .txt było coś takiego:
txtfile1
Czas uruchamiania systemu: xx / xx / xxxx
txtfile2
Czas uruchamiania systemu: xx / xx / xxxx
txtfile3
Czas uruchamiania systemu: xx / xx / xxxx
itp...
Jakich poleceń mogę użyć, aby to zrobić?
for /f
,dir
,findstr
,echo
powinienem zacząć.Odpowiedzi:
Potrzebuję wyodrębnić nazwę każdego pliku i jedną linię wewnątrz pliku i wyeksportować go do nowego pliku .txt.
Użyj następującego pliku wsadowego.
Merge.cmd:
Przykładowy wynik:
Uwagi:
*.txt
są wyszukiwane w poszukiwaniu ciągu pasującego do `System Boot Timenew.txt
Merge.cmd
wiele razy pamiętaj odel new.txt
pierwszy.Dalsze czytanie
źródło
Możesz użyć
sed
lub nawetgrep
aby wyprowadzić linię z pliku tekstowego.(oh, widzę, że jesteś w systemie Windows. Jeśli nie masz
grep
lubsed
zainstalowany, powinieneś być w stanie korzystaćfindstr
zamiast.)źródło