พิมพ์% ^ ลงใน cmd.exe เป็นไข่อีสเตอร์ของ Windows หรือไม่


79

เมื่อฉันพิมพ์เป็น%^คำสั่งและกดEnterแล้วมันก็พูดว่า:

More?

เมื่อฉันกดEnterอีกครั้งมันให้การตอบสนองเดียวกัน

นี่เป็นไข่อีสเตอร์หรือไม่ นี่คืออะไร?


13
คุณควรจะได้กดใส่อีกครั้งหนึ่งแล้ว googled "cmd กะรัต" แทน :)
panhandel

6
พิมพ์ "ip ^" [enter] "config" [Enter] ... โดยไม่มี qoutes ตอนนี้คุณเข้าใจสิ่งที่ ^ ทำ
n00b

7
พฤติกรรมนี้ทำให้คุณคิดว่าเป็นไข่อีสเตอร์
jamesdlin

1
ฉันเดาเพราะMoreแตกต่างจากสิ่งที่คุณคาดหวัง (โดยปกติคุณจะคิดว่ามันแค่พูดว่าไม่ถูกต้อง /)
Evan Carslake

คำตอบ:


50

CMD ขึ้นอยู่กับสาย มันอ่านและรันครั้งละหนึ่งบรรทัดเท่านั้น More?เมื่อคุณกำลังพิมพ์และคุณยังไม่เสร็จสิ้นสายจะแจ้งให้กับ

สิ่งที่คุณเจาะจงคือไม่มีการลงท้ายบรรทัดดังนั้นรอเพื่อดูว่าเกิดอะไรขึ้นหลัง%เครื่องหมาย

มันง่ายกว่าที่จะเห็นโดยใช้วงเล็บ

ลอง dir

แล้วก็

(dir
echo %time%
(type c:\windows\win.ini
)
)

เฉพาะเมื่อบรรทัดเสร็จสมบูรณ์ (การจับคู่วงเล็บ) จะอ่านและดำเนินการ

นี่คือรายการของเครื่องหมายวรรคตอน

&    separates commands on a line.

&&    executes this command only if previous command's errorlevel is 0.

||    (not used above) executes this command only if previous command's errorlevel is NOT 0

>    output to a file

>>    append output to a file

<    input from a file

|    output of one command into the input of another command

^    escapes any of the above, including itself, if needed to be passed to a program

"    parameters with spaces must be enclosed in quotes

+ used with copy to concatenate files. E.G. copy file1+file2 newfile

, used with copy to indicate missing parameters. This updates the files modified date. E.G. copy /b file1,,

%variablename% a inbuilt or user set environmental variable

!variablename! a user set environmental variable expanded at execution time, turned with SelLocal EnableDelayedExpansion command

%<number> (%1) the nth command line parameter passed to a batch file. %0 is the batch file's name.

%* (%*) the entire command line.

%<a letter> or %%<a letter> (%A or %%A) the variable in a for loop. Single % sign at command prompt and double % sign in a batch file.

\\ (\\servername\sharename\folder\file.ext) access files and folders via UNC naming.

: (win.ini:streamname) accesses an alternative steam. Also separates drive from rest of path.

. (win.ini) the LAST dot in a file path separates the name from extension

. (dir .\*.txt) the current directory

.. (cd ..) the parent directory


\\?\ (\\?\c:\windows\win.ini) When a file path is prefixed with \\?\ filename checks are turned off. 

< > : " / \ | Reserved characters. May not be used in filenames.



Reserved names. These refer to devices eg, 

copy con <filename> 

which copies a file to the console window.

CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, 

COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, 

LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9



Maximum path length              260 characters
Maximum path length (\\?\)      32,767 characters (approx - some rare characters use 2 characters of storage)
Maximum filename length        255 characters


.
--

4
คุณพบรายการเครื่องหมายวรรคตอนนี้จากที่ใด
Steven

5
ฉันเขียนเอง เอกสารอ้างอิงคือไฟล์วิธีใช้ MSDos 6.22, วิธีใช้คำสั่ง Windows Vista (เช่นdir /?) และ Kit Software Developent ของ Windows
เรียก

1
นอกจากนี้เคยใช้ MS นี้ดาวน์โหลดฟรีปรากฏขึ้นอีก บทที่ 2 จากการเขียนสคริปต์เชลล์ของ Windows NT เผยแพร่โดย MacMillan Technical Publishing (ฉันได้รวบรวม skydrive ไว้ที่skydrive.live.com/redir?resid=E2F0CE17A268A4FA!121 )
ทริกเกอร์

'(' และ ')' เป็นวงเล็บ; โดยทั่วไปจะถือว่าเป็น '[]' (วงเล็บเหลี่ยม) หรือ '<>' (วงเล็บเหลี่ยม)
toddkaufmann

7
@toddkaufmann "วงเล็บ" ยังสามารถอ้างถึง (และ) มันเป็นคำที่ใช้กันโดยทั่วไปนอกสหรัฐอเมริกาดูenglishclub.com/writing/punctuation-round-brackets.htmเป็นต้น
hvd

114

เลขที่

Microsoft หยุดอย่างเป็นทางการรวมถึงไข่อีสเตอร์ในโปรแกรมโดยเป็นส่วนหนึ่งของการริเริ่มการคำนวณที่เชื่อถือได้ในปี 2545
http://en.wikipedia.org/wiki/Easter_eggs_in_Microsoft_products

Larry Osterman ตั้งข้อสังเกตในเดือนตุลาคม 2548 ว่าการเพิ่มไข่อีสเตอร์เป็นเหตุให้เลิกจ้าง

ทุกวันนี้การเพิ่มไข่อีสเตอร์ลงในระบบปฏิบัติการ Microsoft นั้นเป็นสิ่งที่เกิดขึ้นทันทีดังนั้นจึงไม่น่าเป็นไปได้ที่คุณจะได้เห็นอีก

http://blogs.msdn.com/b/larryosterman/archive/2005/10/20/483110.aspx

พร้อมรับคำสั่งที่กำลังมองหาต่อเนื่อง ( More?) ^ของคำสั่งเพราะมันจบลงด้วยตัวหนี

อักขระ ^ escape สามารถใช้เพื่อทำให้คำสั่งแบบยาวสามารถอ่านได้ง่ายขึ้นโดยแบ่งออกเป็นหลายบรรทัดและหลีกเลี่ยง Carriage Return + Line Feed (CR / LF) ที่ท้ายบรรทัด
http://ss64.com/nt/syntax- esc.html


31
พวกเขากำจัดไข่อีสเตอร์ในอนาคตทั้งหมดเพื่อเพิ่มความน่าเชื่อถือ? พวกเขาคิดว่ามันเป็นไปได้อย่างไร
Panzercrisis

29
@PanzCrisis ทำไมไม่มีไข่อีสเตอร์? blogs.msdn.com/b/larryosterman/archive/2005/10/21/483608.aspx
Steven

12
เหตุใดจึงแจ้งเพิ่มเติม เป็นครั้งที่สองหากคุณไม่ตอบสนองอะไรกับสิ่งแรก?
Random832

2
@AlecTeal ใช่ แต่การทำเช่นนั้นฉันต้องใส่^ตอนท้ายของแต่ละบรรทัด ถ้าฉันพิมพ์บางสิ่ง (ไม่^) ไปที่More?พรอมต์แรกมันจะดำเนินการทันที แต่ถ้าฉันเพิ่งป้อนมันจะแจ้งให้More?อีกครั้ง แก้ไข: ฉันได้ทำการทดสอบเพิ่มเติมด้วย echo ซึ่งแสดงให้เห็นว่าการป้อนบรรทัดว่างที่More?พรอมต์ทำให้ CR / LF ที่แท้จริงอยู่ในบรรทัดคำสั่ง ไม่รู้ว่าทำไมฉันไม่เจอเมื่อวานนี้
Random832

2
ความคิดริเริ่มที่น่าเชื่อถือของคอมพิวเตอร์ช่วยป้องกันพฤติกรรมที่ไม่มีเอกสาร แต่พวกเขาไม่เคยป้องกันการบันทึกไข่อีสเตอร์;)
Derek 朕會功夫

7

เรียบง่ายจริงๆจากคำตอบและความคิดเห็นอื่น ๆ (และอินพุตของฉันเอง) นี่คือสิ่งที่ฉันรวบรวม:

  • Microsoft ไม่รวมไข่อีสเตอร์และนี่ไม่ใช่หนึ่งเดียว
  • แม้แต่การพิมพ์ก็^ให้การตอบสนองที่เหมือนกัน
  • ^ ใช้เพื่อเสร็จสิ้นคำสั่งที่ไม่สมบูรณ์: [ขอบคุณ @ n00b]

    C:\windows\system32>net ^
    More? user
    
    User accounts for \\INFINITEPC
    
    -------------------------------------------------------------------------------
    Administrator            Guest                    Rahul
    The command completed successfully.
    

  • ดังนั้นโดยทั่วไปถ้าคุณพิมพ์ip^และกด Enter แล้วพิมพ์configแล้วลงทะเบียน cmd ipconfigว่ามันเป็น
  • ^ถูกใช้เพื่อทำให้คำสั่งแบบยาวสามารถอ่านได้มากขึ้น [ขอบคุณ @Steven]
  • ฉันคิดว่านี่เป็นไข่อีสเตอร์เพราะฉันไม่ได้คาดหวังคำสั่งที่จะตอบสนองในภาษามนุษย์

  • โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
    Licensed under cc by-sa 3.0 with attribution required.