ฉันจะล้างเทอร์มินัลใน Visual Studio Code ได้อย่างไร


133

ฉันต้องการทำความสะอาดเนื้อหาของเทอร์มินัลใน Visual Studio Code

ทุกครั้งที่ฉันใช้ Maven เอาต์พุตของเทอร์มินัลจะแนบมากับบิลด์ก่อนหน้าซึ่งทำให้ฉันสับสน

ฉันจะล้างหน้าต่างเทอร์มินัลด้วยคำสั่งหรือแป้นพิมพ์ลัดได้อย่างไร

clsไม่ทำงาน; มันซ่อนเฉพาะข้อความเท่านั้น


เหตุใดจึงมีคำตอบซ้ำ ๆ กันมากมายที่นี่? โปรดอ่านสิ่งที่คนอื่นเขียนก่อนที่คุณจะพิจารณาเพิ่มคำตอบอื่น
มาร์ค

คำตอบ:


85

ใช้Ctrl+ K. สิ่งนี้จะทำความสะอาดคอนโซลของคุณใน Visual Studio Code

ตามความคิดเห็นใน VSCode รุ่นที่ใหม่กว่า (1.29 ขึ้นไป) ทางลัดนี้ขาดหายไป / จำเป็นต้องสร้างด้วยตนเอง

  • นำทาง: File> Preferences>Keyboard Shortcuts
  • ค้นหา workbench.action.terminal.clear
  • หากไม่มีการแมปหรือคุณต้องการเปลี่ยนการแมปให้ดำเนินการต่อ มิฉะนั้นให้สังเกตและใช้การทำแผนที่ที่มีอยู่
  • ดับเบิลคลิกที่รายการนี้คุณจะได้รับแจ้งให้ทำการผูกคีย์ การจองและแตะ CTRL ตอนนี้ควรอยู่ในรายการ กด Enter เพื่อบันทึกการแมปนี้KCtrl + K
  • Change when expressionคลิกขวาที่รายการและเลือก พิมพ์terminalFocusแล้วกด Enter
  • แค่นั้นแหละ. ตอนนี้เมื่อสถานีที่อยู่ในโฟกัสและคุณกดctrl+ kคุณจะได้รับการทำงานที่คุณต้องการได้คาดว่าจะได้รับจากการทำงาน/clearcls

34
นี้ดูเหมือนจะไม่ทำงานอีกต่อไปหลังจากการอัพเกรด Visual Studio 1.29รหัสรุ่นเป็นรุ่น
Krzysztof Czelusniak

17
สำหรับ 1.29 ดูเหมือนว่าคุณต้อง rebind Ctrl + K ไปที่ workbench.action.terminal.clear
CatBusStop

61
ใช่ฉันคิดว่าฉันกำลังจะบ้า ฉันใช้Ctrl + Kและเมื่อถึง v1.29 มันเลิกทำงาน ผมเพิ่งไปFile -> Preferences -> Keyboard Shortcutsและพบว่าการทำแผนที่สำหรับการClear: workbench.action.terminal.clearไม่ได้มีการทำแผนที่อีกต่อไป ฉันเพิ่มCtrl + Kกลับไม่มีข้อขัดแย้งและใช้งานได้ดีอีกครั้ง อาจจะมีการกำกับดูแลการเปิดตัว?
atconway

19
อย่าลืมเพิ่ม"when": "terminalFocus"การผูกไม่เช่นนั้นการผูกอื่น ๆ จะไม่ทำงาน (เช่นCtrl+K+Enter)
Pavel Agarkov

3
หากต้องการเพิ่มสิ่งที่ @PavelAgarkov กล่าวถึงคุณสามารถตั้งค่า "เมื่อ" โดยคลิกลิงก์ "keybindings.json" ในข้อความที่ด้านบนของแป้นพิมพ์ลัดที่ระบุว่า "สำหรับการปรับแต่งขั้นสูงให้เปิดและแก้ไข keybindings.json"
Ryan


78

สำหรับรุ่นที่และv1.32ด้านบนดูด้านล่าง

การเชื่อมโยงสำหรับคำสั่งนี้ยังคงต้องได้รับการตั้งค่าด้วยตนเองแม้ว่าv1.33.1ฉันจะอยู่ที่ใดก็ตาม คำสั่งอยู่ที่นั่นTerminal: Clearแต่การโยงว่างเปล่า นี่คือวิธีที่คุณสามารถตั้งค่าการผูกในv1.32และขึ้นได้

เปิดขึ้นKeyboard Shortcutsด้วยCtrl+ K, +Ctrl Sจากนั้นคลิกที่{}ถัดจากKeyboard Shortcutsแท็บเพื่อเปิดkeybindings.jsonไฟล์

แป้นพิมพ์ลัด

หลังจากทำเช่นนั้นให้หาพื้นที่ว่างที่ใดก็ได้ในไฟล์และพิมพ์การผูกคีย์ด้านล่าง

{
    "key": "ctrl+k",
    "command": "workbench.action.terminal.clear",
    "when": "terminalFocus"
}

สำหรับเวอร์ชันต่างๆให้v1.32ดูด้านล่าง

นี่คือสำหรับ Visual Studio รหัสv1.18ขึ้นไปv1.32ผมเชื่อว่า; v1.29.1ฉันอยู่ใน เนื่องจากเห็นได้ชัดว่ามีข้อสันนิษฐานมากมายเกี่ยวกับการเชื่อมโยงเริ่มต้นนี่คือวิธีที่คุณตั้งค่าการเชื่อมโยงจากนั้นใช้ โปรดทราบว่าการผูกนี้จะลบประวัติทั้งหมดในเทอร์มินัลของคุณด้วย

เปิดขึ้นKeyboard Shortcutsด้วยCtrl+ K, +Ctrl Sเมื่อคุณอยู่ในKeyboard Shortcutsคลิกในข้อความที่ระบุว่าkeybindings.json ....open and edit keybindings.jsonจากนั้นทางด้านขวาให้keybindings.jsonเพิ่มสิ่งนี้ (ตรวจสอบให้แน่ใจว่าคุณใส่ลูกน้ำก่อนอันแรก{หากมีการผูกอย่างน้อยหนึ่งรายการแล้ว):

{
    "key": "ctrl+k",
    "command": "workbench.action.terminal.clear",
    "when": "terminalFocus"
}

สำหรับทุกรุ่น

จำไว้ว่า"key":สามารถผูกอะไรก็ได้ที่คุณต้องการ มันไม่จำเป็นต้องเป็น +CtrlK

ในการใช้การเข้าเล่มคุณต้องมีโฟกัสในเทอร์มินัลของคุณจากนั้นทำการผูก


3
ขอบคุณ. @danilo คุณอาจพิจารณาทำให้คำตอบนี้เป็นที่ยอมรับเนื่องจากมีรายละเอียดและเป็นปัจจุบันมากขึ้น
idmadj

ดูเหมือนว่า MS จะเปลี่ยนไปเล็กน้อย ใน v1.41.1 ฉันไม่พบแป้นพิมพ์ลัด {} อย่างไรก็ตาม F1> ค่ากำหนด: เปิดแป้นพิมพ์ลัด (JSON) อนุญาตให้ฉันสร้างทางลัดตามที่คุณกำหนด
woter324

@ woter324 หากคุณต้องการแก้ไขโพสต์ของฉันตามรูปแบบเดียวกับที่ฉันใช้โปรดทำ! ฉันไม่ได้ใช้ vsCode อีกต่อไปและตอนนี้ฉันใช้ Mac แทน Windows
SovietFrontier

24

ไปที่

  1. ไฟล์> ค่ากำหนด> แป้นพิมพ์ลัด
  2. ค้นหา "Terminal: clear"
  3. โดยค่าเริ่มต้นจะไม่มีการกำหนดแป้นพิมพ์ลัด
  4. เพียงคลิกที่ไอคอนบวก (+) ในแบนเนอร์และระบุทางลัดที่คุณต้องการเพื่อล้างเทอร์มินัล
  5. ฉันชอบใช้ ctrl + k เนื่องจากทางลัดนั้นไม่ได้กำหนดด้วยคำสั่งใด ๆ

10

เพื่อล้างเทอร์มิใน VS รหัสเพียงกดCtrl + Shift + Pสำคัญ togather นี้จะเปิดจานคำสั่งและประเภทของคำสั่งของ Terminal: ล้าง นอกจากนี้คุณจะไปดูในมุมทาสก์บาร์บนซ้ายของรหัส VS เปิดpallete คำสั่ง

สิ่งนี้จะล้างเทอร์มินัลได้อย่างง่ายดายและทำงานกับไดเร็กทอรีใด ๆ ที่คุณเปิดในเทอร์มินัลของคุณ สำหรับ Windows ลองดูว่าใช้ได้กับ Mac หรือไม่


นี่เป็นวิธีแก้ปัญหาที่ถูกต้องเพียงวิธีเดียวที่ทำงานได้อย่างรวดเร็วในโค้ด VS เวอร์ชันทันสมัย ด้วยเหตุผลบางอย่าง Google รู้และแสดงสิ่งนี้โดยตรงก่อนที่จะคลิก trough stack overflow
Roel

9

สำหรับ MacBook อาจจะไม่Cmd+ K...

มีการอภิปรายกันเป็นเวลานานสำหรับกรณีที่Cmd+ ใช้Kงานไม่ได้ ในกรณีของฉันฉันได้ทำการแก้ไขอย่างรวดเร็วด้วย

cmd + K + cmd + K

ไปที่เมนูการตั้งค่า -> คีย์ลัด -> ค้นหา ('ชัดเจน') เปลี่ยนจาก K ตัวเดียวเป็น K คู่ ...


4
Cmd+Kจะใช้งานได้คุณเพียงแค่ต้องตั้งค่าอีกครั้งในแป้นพิมพ์ลัดworkbench.action.terminal.clearเพื่อCmd+Kให้มันแสดงSource: UserแทนSource: Default
unmultimedio

7

ใช้Ctrl+ Kเพื่อล้างเทอร์มินัล

แต่ไม่สามารถทำได้ใน Linux Visual Studio Code

สำหรับ Linux คุณสามารถทำได้ดังนี้:

ผ่านจานคำสั่ง: ctrl+ shift+ p, "tclear"

หากต้องการเพิ่มสิ่งนี้ในทางลัดให้คัดลอกวางสิ่งนี้ในไฟล์การผูกแป้น:

{
  "key": "ctrl+k",
  "command": "workbench.action.terminal.clear",
  "when": "terminalFocus"
}

1
แค่อยากจะเพิ่มใน VS Code 1.18 สิ่งนี้อยู่ใน keybindings.js แต่ฉันต้องเพิ่มลงใน keybindings.js ของผู้ใช้ก่อนจึงจะเริ่มทำงาน นอกจากนี้ในการอ่านเรื่องนี้ดูเหมือนว่าการเพิ่มไว้ในตอนท้ายมีความสำคัญ แต่ไม่ใช่สำหรับฉัน ดู: github.com/Microsoft/vscode/issues/36144#issuecomment-346736998
rwg

คุณสามารถใช้ได้หลังจากที่คุณผูกคีย์เหล่านั้นเท่านั้น
SovietFrontier

7

V1.33 ไม่ยอมรับctrl + kเพื่อล้างเทอร์มินัล (Windows)

คุณต้องเปิดใช้งานด้วยตนเองโดยการเพิ่มโค้ดด้านล่างในkeybiniding.jsonของคุณซึ่งจะแทนที่ค่าเริ่มต้น

ใน VSCode ของคุณให้กดctrl + shift + pค้นหาแป้นพิมพ์และคลิกที่เปิดแป้นพิมพ์ลัดเพื่อเปิดไฟล์keybindings.json

หมายเหตุ:หากคุณเปิดค่าเริ่มต้นจะแสดงการตั้งค่าเริ่มต้น แต่เนื่องจากไฟล์นี้เป็นแบบอ่านอย่างเดียวคุณจึงไม่สามารถแก้ไขได้ด้วยตนเอง

วางสคริปต์ต่อไปนี้ใน keybindings.json

{
            "key": "ctr+k",
            "command": "workbench.action.terminal.clear",
            "when": "terminalFocus"
}

บันทึกไฟล์

ตอนนี้เทอร์มินัลของคุณจะถูกล้างโดยcrtl + k


ฉันจะหา keybindings.json ได้ที่ไหน
pabrams

@pabrams สำหรับรหัส VS v1.37.1 สิ่งนี้จะใช้งานได้ คุณสามารถเปิดไฟล์แป้นพิมพ์ลัดโดยใช้ Ctrl + K, Ctrl + S ที่มุมขวาคลิกที่ไอคอนสลับไฟล์เพื่อเปิดเวอร์ชัน JSON สำหรับไฟล์แป้นพิมพ์ลัด
Arslan Munir

6

อัปเดตปี 2019 (อ่านแบบเต็ม)


ทางลัด

Mac: cmd + k

ของ windows: ctrl + k


การแก้ไขปัญหา

หากทางลัดไม่ได้ผลสำหรับคุณสถานการณ์ที่เป็นไปได้มากที่สุดคือคุณหรือส่วนขยายที่คุณติดตั้งได้เพิ่มปลายเปิดctrl + k/ cmd + kคอร์ดลงในทางลัดอื่น

ความหมายปลายเปิดทางลัดไม่มีwhenประโยคที่ชัดเจนที่ไม่รวมเทอร์มินัลโฟกัส มีสองวิธีที่เป็นไปได้ที่นี่

แนวทางที่ 1:

หากคุณเพิ่มทางลัดเพียงแค่ไปที่ไฟล์ keybindings.jsonและเพิ่มwhenประโยคที่ไม่ได้รวมถึงการมุ่งเน้นขั้ว ตัวอย่าง:

{
    "key": "cmd+k cmd+c",
    "command": "someCommandHere",
    "when": "editorTextFocus",
}

แนวทางที่ 2:

หรือคุณสามารถเพิ่มworkbench.action.terminal.clearคำสั่งที่ด้านล่างสุดkeybindings.jsonเพื่อให้แน่ใจว่าคำสั่งนั้นมีความสำคัญเหนือทางลัดอื่น ๆ ควรเพิ่มความคิดเห็นเพื่อที่คุณจะได้ไม่ลืมและวางคอร์ดใหม่ไว้ด้านล่างในภายหลัง ตัวอย่าง:

// Keep this keybinding at very bottom of file to ensure terminal clearing.
{
  "key": "cmd+k",
  "command": "workbench.action.terminal.clear",
  "when": "terminalFocus",
}

สำหรับข้อมูลเพิ่มเติมโปรดตรวจสอบปัญหา GitHub นี้




2

หากต้องการล้างเทอร์มินัลโดยใช้การเชื่อมโยงคีย์เริ่มต้นใน VS-Code เวอร์ชันล่าสุดให้คุณกด CTRL-L


นี่คือคำตอบที่ดีที่สุด .... การเปิด pallete คำสั่ง ... smh ... นั่นอาจเป็นคำตอบสำหรับการทำอะไรก็ได้ใน VS code
daansteraan

1

คำตอบที่ยอมรับควรเป็นดังต่อไปนี้ซึ่งเป็นความคิดเห็นของ unmultimedio สำหรับหนึ่งในคำตอบข้างต้น:

Cmd + K จะใช้งานได้คุณเพียงแค่ต้องตั้งค่าอีกครั้งในแป้นพิมพ์ลัดที่ workbench.action.terminal.clear เป็น Cmd + K ดังนั้นจึงแสดงเป็นแหล่งที่มา: ผู้ใช้แทนแหล่งที่มา: ค่าเริ่มต้น - unmultimedio Mar 12'19 เวลา 1: 13


นี่ควรเป็นคำตอบที่ได้รับการยอมรับฉันไม่แน่ใจว่าทำไมถ้าตั้งเป็น "ค่าเริ่มต้น" มันจะใช้ไม่ได้
Miguel SánchezVillafán

1

คลิกขวาที่เทอร์มินัลและเลือกตัวเลือกที่ชัดเจน (สำหรับอูบุนตู)

สำหรับ Mac เพียงพิมพ์ clear


0

คุณสามารถเปลี่ยนจากเมนูการตั้งค่า (อย่างน้อยจากเวอร์ชัน 1.30.2 ขึ้นไป) ...

บน Mac เพียงแค่กดรหัส> การตั้งค่า> การตั้งค่า

จากนั้นค้นหาคำว่า "clear" และเลือก Clear Previous Output

การตั้งค่า - ล้างเอาต์พุตก่อนหน้า


0

หากต้องการลบคำสั่งก่อนหน้าอย่างถาวรให้ใช้สิ่งนี้

  1. ชุด PSReadlineOption -HistoryNoDuplicates

  2. ลบรายการ (Get-PSReadlineOption) .HistorySavePath

  3. Alt-F7


0

เลือกOpen Keyboard Shortcutsจากจานคำสั่งและใส่ต่อไปนี้ในไฟล์แป้นพิมพ์ลัด:

{
    "key": "cmd+k",
    "command": "workbench.action.terminal.clear",
    "when": "terminalFocus"
}


0

ฉันใช้ Visual Studio Code 1.38.1 บนเครื่อง windows 10

ลองทำตามขั้นตอนด้านล่าง:

  1. exit()

  2. PS C:\Users\username> Cls

  3. PS C:\Users\username>python



0

ปุ่ม F1 เปิดทางลัดให้ฉันโดยใช้ windows 10 จากนั้นพิมพ์ Terminal แล้วคุณจะเห็นตัวเลือกที่ชัดเจน


0
  1. เพียงคลิกปุ่มรูปเฟืองที่ด้านซ้ายล่างบนหน้าจอรหัส VS
  2. จากนั้นค้นหา "Terminal: clear"
  3. โดยค่าเริ่มต้นจะไม่มีการกำหนดแป้นพิมพ์ลัด
  4. เพียงดับเบิลคลิกที่ Terminal: Clear
  5. และระบุทางลัดที่คุณต้องการเพื่อล้างเทอร์มินัล
  6. โดยปกติจะใช้ ctrl + k เนื่องจากทางลัดนั้นไม่ได้กำหนดด้วยคำสั่งใด ๆ

FYI: วิธีนี้เหมือนกับ @SuRa แต่ง่ายกว่าเล็กน้อย Btw: ฉันใช้ VS Code เวอร์ชัน 1.43.0


0

โดยค่าเริ่มต้นจะไม่มีการผูกคีย์ที่เกี่ยวข้องกับการล้างเทอร์มินัลใน VSCode ดังนั้นจึงต้องเพิ่ม Keybinding ใหม่โดยทำตามขั้นตอนด้านล่าง:

  1. นำทาง: ไฟล์ -> ค่ากำหนด -> แป้นพิมพ์ลัด (หรือCtrl+ KและCtrl+ Sกัน)
  2. พิมพ์ในแถบค้นหาด้านบน: เทอร์มิ: ล้าง
  3. รายการที่มีคำสั่ง: เทอร์มิ: ล้างจะปรากฏขึ้นด้วยคำสั่งต่อไปนี้ VSCode workbench.action.terminal.clear
  4. Right ClickChange Keybindingเกี่ยวกับมันและกด จากนั้นกดCtrl+ ด้วยกันแล้วK Enterมันจะถูกบันทึกไว้
  5. Right ClickChange When Expressionอีกครั้งและกด เพียงแค่ใส่: terminalFocus มันจะถูกบันทึกไว้

สุดท้ายให้เปิดแบบบูรณาการของสถานีและมีความสำคัญภายในขั้วกดCtrlK +



0

ฉันใช้การอัปเดต Visual Studio Code ในเดือนมิถุนายน 2020 ฉันกำลังมองหาวิธีง่ายๆในการล้างประวัติของ Terminal output จากสคริปต์ Python การฆ่าเทอร์มินัลด้วยการคลิกที่ไอคอนถังขยะที่ด้านขวาบนเป็นการทำสิ่งที่ฉันต้องการและสภาพแวดล้อม Conda ของฉันจะเปิดใช้งานใหม่โดยอัตโนมัติ


-1

ส่วนขยาย Code Runner มีการตั้งค่า "ล้างเอาต์พุตก่อนหน้า" ซึ่งเป็นสิ่งที่ฉันต้องการ 95% ของเวลา

File > Preferences > Settings > (search for "output") > Code-runner: Clear previous output

เวลาที่เหลือฉันจะปิดใช้งานการตั้งค่าและใช้ปุ่ม "ล้างเอาต์พุต" (ด้านบนขวาของบานหน้าต่างเอาต์พุต) เพื่อเลือกล้างเอาต์พุตสะสม

สิ่งนี้อยู่ใน Visual Studio Code 1.33.1 พร้อม Code Runner 0.9.8

(การตั้งค่าการผูกคีย์Ctrl+kไม่ได้ผลสำหรับฉันน่าจะเป็นเพราะส่วนขยายบางส่วนได้กำหนด "คอร์ด"ขึ้นต้นด้วยCtrl-kแต่ "ล้างเอาต์พุตก่อนหน้านี้" เป็นตัวเลือกที่ดีกว่าสำหรับฉัน)


-1

ลองพิมพ์ 'cls' หากไม่ได้ผลให้พิมพ์ 'Clear' capital C ไม่มีเครื่องหมายคำพูดใด ๆ หวังว่านี่จะช่วยได้


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