Bagaimana cara menampilkan konten file teks dalam CMD?


Jawaban:


321

Anda bisa menggunakan moreperintah. Sebagai contoh:

more filename.txt

Lihatlah utilitas GNU untuk Win32 atau unduh :


Bagaimana ini mirip dengan tail -f? tail -f loop selamanya. Bagaimana Anda meniru -f itu?
Elie Saad

2
Ini tidak menjawab pertanyaan. Tidak yakin mengapa nilainya begitu tinggi. OP sedang mencari 2 hal - alternatif jendela untuk kucing, dan alternatif untuk ekor -f. Jika Anda akan menginstal utilitas GNU untuk windows, Anda dapat menggunakan hal-hal itu.
gburton

174

Kita dapat menggunakan perintah 'ketik' untuk melihat konten file dalam cmd.

Contoh -

type abc.txt

Informasi lebih lanjut dapat ditemukan di SINI .


Saya suka jawaban ini karena tidak interaktif. morememperlihatkan layar N pada waktu yang harus Anda klik
user2023861

23

Saya tidak berpikir ada fungsi bawaan untuk itu

xxxx.txt > con

Ini membuka file di editor teks default di windows ...

type xxxx.txt

Ini menampilkan file di jendela saat ini. Mungkin params ini bisa Anda gunakan ...

Ada pertanyaan serupa di sini: skrip batch CMD.EXE untuk menampilkan 10 baris terakhir dari file txt Jadi ada perintah "lebih" untuk menampilkan file dari baris yang diberikan, atau Anda dapat menggunakan GNU Utilities untuk Win32 apa yang disarankan bryanph di tautannya.


7

Anda dapat menggunakan perintah 'lebih' untuk melihat konten file:

more filename.txt

2
Selamat datang di StackOverflow dan terima kasih telah mencoba membantu. Tolong jelaskan bagaimana versi windows lebih dapat digunakan untuk secara otomatis melihat baris yang baru tiba dalam file teks. Itu akan membuat jawaban Anda lebih langsung terkait dengan pertanyaan OP, yaitu mendemonstrasikan "tail -f" -compatibility OP inginkan.
Yunnosch

4

Menggunakan perintah PowerShell tunggal untuk mengambil akhir file:

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

Ini berlaku untuk PowerShell 3.0 dan yang lebih baru.

Pilihan lain adalah membuat file bernama TAIL.CMD dengan kode ini:

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

Ini berfungsi, tetapi terlalu lambat, karena PowerShell mungkin membutuhkan 2 atau 3 detik untuk memulai.
Anic17

2

Untuk melakukan ini, Anda dapat menggunakan shell baris perintah Microsoft yang lebih canggih yang disebut " Windows PowerShell ." Itu harus menjadi standar pada versi terbaru Windows, tetapi Anda dapat mengunduhnya dari Microsoft jika Anda belum menginstalnya.

Untuk mendapatkan lima baris terakhir dalam file teks cukup baca file menggunakan Get-Content, kemudian Select-Objectpilih lima item / baris terakhir untuk Anda:

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

Sumber: Menggunakan Cmdlet Get-Content


Jawaban @Eyal lebih tepat dipanggil dari cmd, dan kodenya lebih baik menggunakan Tail daripada menyalurkan ke Select-Object. Anda tidak dapat melakukan -Tunggu saat melakukan Select Object juga. Ini bukan yang diminta OP.
Elie Saad

1

Tidak ada opsi bawaan yang tersedia dengan Windows. Untuk terus memantau log Anda dapat menggunakan aplikasi gratis ini BareTailPro .



1

Jika Anda ingin menampilkan konten file langsung, dan memperbarui ketika file diubah, cukup gunakan skrip ini:

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

Itu akan berulang selamanya sampai Anda menutup jendela cmd.


Ini tidak mereplikasi fungsi ekor.
Preet Sangha

1

Anda dapat melakukannya dalam beberapa metode:

Satu adalah typeperintah: type filename Lainnya adalah moreperintah: more filename Dengan moreAnda juga dapat melakukan itu:type filename | more

Opsi terakhir adalah menggunakan for for /f "usebackq delims=" %%A in (filename) do (echo.%%A) ini untuk setiap baris dan menampilkan kontennya. Ini setara dengan typeperintah, tetapi metode lain untuk membaca konten.

Jika Anda bertanya apa yang harus digunakan, gunakan moreperintah karena itu akan membuat jeda.


0

Jika Anda ingin menampilkan misalnya semua nama file .config (atau .ini) dan konten file ke dalam satu dokumen untuk referensi pengguna (dan maksud saya pengguna ini tidak mengetahui perintah shell yaitu 95% darinya), Anda dapat mencoba ini:

FORFILES / M * myFile.ini / C "cmd / c echo Nama file: @ file >>% temp% \ stdout.txt && type @path >>% temp% \ stdout.txt && echo. >>% temp% \ stdout.txt "| ketik% temp% \ stdout.txt

Penjelasan: - ForFiles: loop pada direktori (dan anak, dll) setiap kriteria pertemuan file - dapat mengembalikan nama file saat ini menjadi proses (@ file) - dapat mengembalikan file path lengkap menjadi proses (@path) - Ketik: Keluarkan konten file

Ps: Perintah pipa terakhir menunjuk file% temp% dan menampilkan konten agregat. Jika Anda ingin menyalin / menempel di beberapa dokumentasi, cukup buka file stdout.txt di kotak teks.

Selamat siang.


Silakan gunakan kode blok `` `untuk menempelkan kode Anda, karena akan lebih mudah dibaca.
Anic17

-1
tail -3 d:\text_file.txt

tail -1 d:\text_file.txt

Saya berasumsi ini ditambahkan ke Windows cmd.exe di beberapa titik.


2
tidak, tailmasih bukan perintah windows standar. Biasanya itu bagian dari addon seperti cygwin, GNU atau yang lainnya.
Stephan

Ini bukan jawaban yang baik, Anda hanya mengatakan bahwa ini telah diterapkan ke Windows, tetapi tidak, harap periksa informasi Anda sebelum menjawab.
Anic17
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.