Saya mencoba menjalankan perintah pada cmd.exe
, dengan satu baris atau baris baru sebagai bagian dari perintah, seperti di bawah ini:
command -option:text
whatever
Tetapi setiap baris baru menjalankan perintah, alih-alih melanjutkan perintah di baris berikutnya.
Jadi, bagaimana saya bisa memasukkan karakter baris baru, atau membuat perintah multi-baris di cmd.exe?
windows
command-line
newlines
rudimenter
sumber
sumber
Jawaban:
Gunakan
^
karakter sebagai pelarian:Saya berasumsi Anda menggunakan cmd.exe dari Windows XP atau serupa. Ini bukan DOS yang sebenarnya. Jika Anda menggunakan DOS aktual (MS-DOS, Win3.1, Win95, Win98, WinME), maka saya tidak percaya ada jalan keluar untuk baris baru. Anda perlu menjalankan shell khusus. cmd.exe akan meminta Anda untuk "Lebih banyak?" setiap kali Anda menekan enter dengan
^
di akhir baris, cukup tekan enter lagi untuk benar-benar keluar / menyematkan baris baru.sumber
SHUTDOWN.EXE
perintah. Saya akhirnya menggunakan sesuatu seperti ini:shutdown -s -t 900 -c "foo bar"^
> Lebih banyak?"baz"^
> Lebih banyak?"test that."
Itu berhasil.Gunakan kode Alt dengan numpad
Karakter umpan garis itu dapat dimasukkan sebagai kode Alt pada CLI menggunakan numpad: dengan NumLock aktif, tahan ALT dan ketik 10 pada numpad sebelum melepaskan ALT. Jika Anda membutuhkan CR juga, ketik keduanya dengan Alt + 13 dan kemudian Alt + 10:
♪◙
Catatan: ini tidak akan berfungsi dalam file batch.
Contoh kasus penggunaan:
Anda mencoba membaca variabel lingkungan% PATH% atau% CLASSPATH% untuk mendapatkan gambaran umum singkat tentang apa yang ada dan dalam urutan apa - tetapi dinding teks yang
path
mengembalikan tidak dapat dibaca. Maka ini adalah sesuatu yang Anda dapat dengan cepat mengetik:Edit:
Menambahkan
>con
solusi yang ditemukan Brent Rittenhouse untuk versi cmd.exe yang lebih baru, di mana metode asli telah berhenti bekerja.sumber
e2 99 aa e2 97 99
lulus. Semacam titik kode unicode? Saya melihat karakter masuk pada baris perintah sekalipun. Ada saran?Use legacy console
kotak centang. Tetapi terlihat sangat buruk pada monitor beresolusi tinggi.(echo New-line detected rigghhhtt ◙^<--- HERE!) > CON
Tanda kurung di sekitarnya adalah opsional. Berikut ini adalah contoh yang lebih kuat tentang apa yang dapat Anda lakukan dengan ini (DAN pengembalian carriage yang sekarang berfungsi, dan sepenuhnya independen!): I.imgur.com/qqN37PH.pngSaya tidak tahu apakah ini akan berhasil untuk Anda tetapi dengan menempatkan & echo (ruang berikut ini penting). di antara setiap pernyataan yang Anda inginkan di baris baru. Saya hanya mencoba ini dengan file bat sederhana
Kemudian disimpan itu sebagai testNewLines.bat
Jadi garis cmd
Menghasilkan yang berikut ini digaungkan kembali
baris pertama baris
kedua Baris
ketiga
sumber
Memperluas jawaban Amit ( /superuser//a/1132659/955256 ) Saya menemukan cara untuk melakukannya dalam font apa saja TANPA menggunakan konsol lawas.
Yang perlu Anda lakukan hanyalah menggemakan baris dengan karakter alt-10 dan kemudian mengarahkannya kembali
con
dan itu akan berhasil!Misalnya, diberikan:
sunting: Fakta menyenangkan, tampaknya Anda dapat menempatkan pengalihan di awal seperti:
Aneh, kan?
Anda akan mendapatkan output dari:
(Tanda kurung di sekitarnya adalah opsional.)
Berikut adalah contoh yang lebih kuat tentang apa yang dapat Anda lakukan dengan pengembalian carriage AND ini yang sekarang berfungsi, dan sepenuhnya independen !:
Terbaik dari semua, ini berfungsi jika Anda mengarahkan ulang ke file juga!
(cukup ganti
> CON
ke> desired_output_file.txt
Nikmati!
sumber
Output ^ dapat disimpan
contoh:
; keluaran:
sumber
Saya percaya Anda tidak dapat melakukan itu dari
cmd.exe
shell Windows . ( Ini bukan DOS. )Anda tidak perlu "shell khusus" penuh untuk itu. Anda hanya perlu menulis sesuatu seperti ini (contohnya dengan Python ):
Atau Ruby:
Lihat, itu tidak sulit.
sumber