Jika badan respons HTTP untuk permintaan ikal tidak berisi baris baru, saya berakhir dengan kondisi yang sangat menjengkelkan ini di mana prompt shell berada di tengah-tengah baris, dan keluar cukup kacau ketika saya meletakkan ikal terakhir perintah di layar, menghapus karakter dari perintah curl menghapus karakter yang salah.
Sebagai contoh:
[root@localhost ~]# curl jsonip.com
{"ip":"10.10.10.10","about":"/about"}[root@localhost ~]#
Apakah ada trik yang bisa saya gunakan untuk secara otomatis menambahkan baris baru di akhir respon curl, untuk mendapatkan prompt kembali di tepi kiri layar?
echo "$(curl localhost:8001/api)"
, jawab jawaban ini: unix.stackexchange.com/a/217611/110338Jawaban:
Dari file man:
Jadi coba tambahkan berikut ini ke
~/.curlrc
file Anda :sumber
echo '-w "\n"' >> ~/.curlrc
-w "\n"
secara manual ke setiap perintah curl dan TIL~/.curlrc
ada!-w "\nKLJLJKLJ LJKLLKJ"
ke saya~/.curlrc
dan menjalankan ikal dan tidak mendapat baris baru atau karakter aneh._
lebih.
. Peluang yang dicari keriting Anda~/_curlrc
dan akibatnyaecho '-w "\n"' >> ~/_curlrc
mungkin akan berhasil. Itu untuk saya. btw: curl akan mengeluh tentang spasi kosong-w "\n"
atau menambahkan; echo
memodifikasi Anda.curlrc
. Jika Anda memodifikasi curlrc Anda, beberapa skrip mungkin rusak jika mereka tidak menangani baris baru di akhir data respons. Saya pribadi akan tetap dengan penambahan pada baris perintah atas memodifikasi rc.Coba itu :
KELUARAN
Ini adalah yang sederhana;)
(dan tidak terbatas pada perintah curl tetapi semua perintah yang tidak selesai dengan baris baru)
sumber
Untuk info lebih lanjut dan juga baris baru bersih setelah keriting
~/.curlrc
(Lebih banyak opsi tersedia di sini )
redirect_url
akan kosong jika permintaan tidak dialihkan atau Anda gunakan-L
untuk mengikuti arahan ulang.Contoh output:
Edit , untuk membuat hal-hal lebih mudah dibaca Anda dapat menambahkan warna ANSI ke
-w
baris, itu tidak mudah untuk menulis secara langsung, tetapi skrip ini dapat menghasilkan~/.curlrc
file dengan warna.sumber
Solusi umum untuk bash adalah menambahkan simbol baris baru ke dalam prompt perintah:
Lihat pertanyaan terkait ( Bagaimana cara membuat baris baru sebelum bash prompt? ) Dan jawaban yang sesuai
Solusi ini mencakup setiap perintah, tidak hanya ikal.
Satu-satunya efek samping adalah Anda mendapatkan command prompt setelah setiap baris ke-2.
sumber