CMD'de bir metin dosyası içeriğini nasıl görüntülerim?


Yanıtlar:


321

moreKomutu kullanabilirsiniz . Örneğin:

more filename.txt

Win32 için GNU yardımcı programlarına göz atın veya indirin :


Bu kuyruk -f'ye nasıl benziyor? kuyruk -f sonsuza kadar döngüler. -F'sini nasıl kopyaladınız?
Elie Saad

2
Bu soruya cevap vermiyor. Neden bu kadar yüksek puan emin değilim. OP 2 şey arıyordu - kedi için bir pencere ve kuyruk için bir alternatif -f. Windows için GNU yardımcı programlarını yükleyecekseniz, bunları kullanabilirsiniz.
gburton

174

Cmd cinsinden dosya içeriğini görmek için 'type' komutunu kullanabiliriz.

Misal -

type abc.txt

Daha fazla bilgiyi BURADA bulabilirsiniz .


Bu cevabı seviyorum çünkü interaktif değil. moretıklamanız gereken bir seferde N ekranını gösterir
user2023861

23

Bunun için yerleşik bir işlev olduğunu düşünmüyorum

xxxx.txt > con

Bu, dosyaları Windows'ta varsayılan metin düzenleyicide açar ...

type xxxx.txt

Bu, dosyayı geçerli pencerede görüntüler. Belki de kullanabileceğiniz param ...

Burada benzer bir soru var: Bir txt dosyasından son 10 satırı görüntülemek için CMD.EXE toplu komut dosyası Yani verilen satırdan bir dosyayı görüntülemek için "more" komutu vardır, ya da bryanph önerilen Win32 için GNU Utilities kullanabilirsiniz onun bağlantısında.


7

Dosyanın içeriğini görmek için 'more' komutunu kullanabilirsiniz:

more filename.txt

2
StackOverflow'a hoş geldiniz ve yardım etmeye çalıştığınız için teşekkür ederiz. Lütfen bir metin dosyasında yeni gelen satırları otomatik olarak görmek için daha fazlasının windows sürümünün nasıl kullanılabileceğini açıklayın. Bu, cevabınızın OPs sorusuyla daha doğrudan ilgili olmasını sağlar, yani OP'nin istediği "tail -f" uyumluluğunu gösterir.
Yunnosch

4

Dosya sonunu almak için tek bir PowerShell komutu kullanma:

powershell -nologo "& "Get-Content -Wait c:\logFile.log -Tail 10"

PowerShell 3.0 ve daha yeni sürümler için geçerlidir.

Başka bir seçenek, bu kodla TAIL.CMD adlı bir dosya oluşturmaktır:

powershell -nologo "& "Get-Content -Wait %1 -Tail %2"

Çalışıyor, ancak PowerShell'in başlaması 2 veya 3 saniye sürebileceğinden çok yavaş.
Anic17

2

Bunu yapmak için, Microsoft'un " Windows PowerShell " adlı daha gelişmiş komut satırı kabuğunu kullanabilirsiniz . Windows'un en son sürümlerinde standart olarak gelmelidir, ancak henüz yüklemediyseniz Microsoft'tan indirebilirsiniz .

Metin dosyasındaki son beş satırı almak için dosyayı kullanarak okuyun Get-Content, ardından Select-Objectsizin için son beş öğeyi / satırı seçin:

Get-Content c:\scripts\test.txt | Select-Object -last 5

Kaynak: Get-Content Cmdlet'ini kullanma


@Eyal'in cevabı, cmd'den daha uygun olmaktır ve kod, Tail'i kullanarak Select-Object'e borulaştırmaktan daha iyidir. Nesne Seçerken de -Beklemezsiniz. OP'nin talep ettiği bu değil.
Elie Saad



1

Dosyanın içeriğini canlı olarak görüntülemesini ve dosya değiştiğinde güncellenmesini istiyorsanız, şu komut dosyasını kullanın:

@echo off
:start
cls
type myfile.txt
goto start

Bu cmd penceresini kapatana kadar sonsuza kadar tekrarlanacaktır.


Bu, kuyruğun işlevselliğini çoğaltmaz.
Preha Sangha

1

Bunu bazı yöntemlerle yapabilirsiniz:

Biri typekomuttur: type filename Diğeri morekomuttur: more filename Bununla moreda yapabilirsiniz:type filename | more

Son seçenek, for for /f "usebackq delims=" %%A in (filename) do (echo.%%A) Her satır için geçerli olacak ve içeriğini görüntüleyecektir. Bu typekomutun eşdeğeridir , ancak içeriği okumak için başka bir yöntemdir.

Ne kullanacağınızı soruyorsanız, moreduraklama yapacağı için komutu kullanın .


0

Örneğin, tüm .config (veya .ini) dosya adını ve dosya içeriğini kullanıcı başvurusu için tek bir dokümanda görüntülemek istiyorsanız (ve bununla kullanıcı kabuğunu bilmiyor yani yani% 95'i), bunu deneyebilirsiniz:

FORFILES / M * myFile.ini / C "cmd / c echo Dosya adı: @file >>% temp% \ stdout.txt && type @path >>% temp% \ stdout.txt && echo. >>% temp% \ stdout.txt "| % temp% \ stdout.txt yazın

Açıklama: - ForFiles: her dosya toplantı kriterini bir dizinde (ve alt, vb.) Döngü - işlemde olan geçerli dosya adını (@file) döndürebilir - işlemde olan tam yol dosyasını döndürebilir (@path) - Tür: Dosya içeriğini çıktılar

Ps: Son dikey komut% temp% dosyasını gösteriyor ve toplu içeriği çıkarıyor. Bazı belgelere kopyalamak / yapıştırmak istiyorsanız, stdout.txt dosyasını textpad'de açın.

İyi günler.


Lütfen kodunuzu yapıştırmak için blok kodunu kullanın, çünkü okunması daha kolay olacaktır.
Anic17

-1
tail -3 d:\text_file.txt

tail -1 d:\text_file.txt

Bu bir noktada Windows cmd.exe eklendi varsayalım.


2
Hayır, tailhala standart bir windows komutu değildir. Genellikle cygwin, GNU veya diğerleri gibi bir addonun parçasıdır.
Stephan

Bu iyi bir cevap değil, sadece bunun Windows'a uygulandığını söylüyorsunuz, ancak hayır, cevaplamadan önce lütfen bilgilerinizi kontrol edin.
Anic17
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.