Kamu tidak bisa Biasanya Anda dapat mencapai hal semacam ini dengan memasukkan karakter carriage-return (0x0D) dalam file yang akan mengembalikan kursor ke kolom pertama di baris yang sama. Tetapi dalam kasus ini tidak berfungsi; CR hanya dimakan secara diam-diam.
Selanjutnya mendapatkan CR di sana agak rumit dan setidaknya di sini melibatkan editor teks. Saya sarankan Anda menulis sedikit program utilitas yang akan melakukan ini untuk Anda, sebenarnya tidak terlalu sulit. Program C kecil berikut mungkin sudah cukup (jika Anda tidak perlu Unicode):
#include <stdio.h>
int main(int argc, char* argv[]) {
if (argc < 2) return 1;
printf("\r%s", argv[1]);
}
Itu tidak lebih dari mencetak karakter CR dan kemudian teks yang Anda tentukan sebagai argumen pertama. Penggunaan sebagai berikut:
@echo off
<nul set /P X=Step 1
pause>nul 2>nul
over.exe "Step 2"
Baris terakhir adalah panggilan ke program itu. Baris kedua adalah idiom batch normal untuk mencetak teks tanpa jeda baris tambahan (yang penting dalam kasus ini karena jika tidak, Anda tidak dapat menimpa baris). Anda bisa menggunakan program di atas juga di tempat itu.
Cara hacky ringan, tetapi satu-satunya di mana Anda dapat yakin di mana Anda berakhir, akan digunakan cls
sebelum output langkah Anda. Akan berkedip tetapi dengan cara itu Anda selalu menulis ke kiri atas. Dan mengalahkan segala sesuatu yang terlihat di konsol (itulah sebabnya saya tidak akan merekomendasikannya); sebagian besar pengguna tidak terlalu menyukainya.