Mengapa konsol PowerShell mengantri tombol tanda bintang ekstra ditekan dalam perintah saya?


2

Ketika saya melakukan operasi yang berjalan lama di konsol PowerShell normal (ini bukan perintah, tetapi ia bekerja dan mensimulasikan perilaku).

PS> Start-Sleep -Seconds 10

Dan saya mulai mengetik perintah saya berikutnya, katakanlah ls **/project.json... ketika perintah sebelumnya kembali dan penekanan tombol saya ditulis ke layar, jumlah tanda bintang ( *) yang saya lihat selalu lebih banyak daripada yang saya ketikkan. Tampaknya tidak masalah jika saya menekan Enter.

PS> ls ***/project.json

Ini sepertinya tidak terjadi dengan kunci alfanumerik lainnya. Itu bisa terjadi dengan asterisk campuran dan kunci alfanumerik lainnya. Tapi, sepertinya itu tidak terjadi jika tanda bintang ada sebelum periode ( .).

PS> ls ***/*.json

Adakah yang tahu apa yang terjadi?


Lingkungan Hidup:

  • Windows 10 Pro v1703 OS Build 15063.413
  • Windows PowerShell v5.1.15063.413 (konsol normal)

1
Saya tidak dapat repro ini pada Windows 7.
DavidPostill

Saya tidak dapat mereproduksi ini di Microsoft Windows [Versi 10.0.15063] PSVersion 5.1.15063.413
LotPings

1
Dapat mereproduksi pada Win10 v1703, PS 5.1.
root

Terjadi dengan karakter lain juga. Saya mengetik ls &&/project.jsondan menerima ls &&&/project.json. Saya juga mencoba ls &&project.jsondan mendapatkan ls &&&project.json- /tidak memiliki pengaruh.
root

Hanya terjadi ketika shift diadakan. Misal jika {shift-down}, &, &, {shift-up}, hasilnya adalah &&&. Jika {shift-down}, &, {shift-up}, {shift-down}, &, {shift-up}, hasilnya adalah &&.
root
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.