สคริปต์ Windows เพื่อคัดลอกข้อความไปยังคลิปบอร์ดหรือไม่


27

ฉันกำลังใช้งานแอปพลิเคชันที่ต้องพยายามลงชื่อเข้าใช้หลายครั้ง (เนื่องจากเซิร์ฟเวอร์ทำงานหนักเกินไป)

แอพนี้ไม่มีฟีเจอร์ "จดจำรหัสผ่านของฉัน"

ดังนั้นฉันต้องการสร้างสคริปต์ (ควรเป็นสคริปต์. bat) ซึ่งจะคัดลอกรหัสผ่านของฉันลงในคลิปบอร์ดก่อนเพื่อที่ฉันจะได้ไม่ต้องพิมพ์รหัสผ่านใหม่ทุกครั้งที่พยายามเข้าสู่ระบบจากนั้นจึงเปิดแอปพลิเคชัน ( ส่วนที่ง่าย)

เป็นไปได้ด้วยคำสั่ง MS-DOS หรือไม่ ฉันต้องการ exe เล็กน้อยหรือภาษาสคริปต์อื่นหรือไม่?

เห็นได้ชัดว่าฉันกำลังมองหาทางออกที่รวดเร็วที่สุด

ขอบคุณล่วงหน้าสำหรับความคิดของคุณ


ฉันไม่คิดว่าคุณสามารถแก้ปัญหานี้ในไฟล์. bat ได้ดูที่ autohotkey มันควรแก้ไขปัญหาของคุณในสองสามบรรทัดถ้าคุณรู้ภาษาการเขียนโปรแกรมแล้วมันค่อนข้างง่าย
Guillermo Siliceo Trueba

คำตอบ:


33

http://www.petri.co.il/software/clip.zip
Note- ลิงก์ของ Petri ไม่ทำงาน เขาได้รับจาก windows server 2003 แต่ฉันเห็น clip.exe บน windows 7 ด้วย มันอยู่ในรุ่น windows windows 7 โพสต์เกินไป

C:\>echo abc| clip  <-- copies abc to the clipboard.

แก้ไข
สิ่งที่สำคัญคือคำสั่งคลิปนั้น แต่ตามที่เอซุชี้ให้เห็นบรรทัดecho abcจะส่ง \ r \ n (ซึ่งเป็นบรรทัดใหม่) หากคุณต้องการหลีกเลี่ยงปัญหานี้นั่นเป็นปัญหามาตรฐานที่แก้ไขได้โดยแทนที่echo texttoechoด้วยecho|set/p=texttoechoดังนั้นC:\>echo|set/p=texttoecho|clip

นอกจากนี้
คุณสามารถวางเพิ่มเติมด้วยการคลิกขวา แต่สำหรับการวางบรรทัดคำสั่งด้วย

unxutils (สิ่งโบราณที่ไม่ได้รับการบำรุงรักษามานานกว่าทศวรรษ) มี gclip และ pclip (ดูเหมือนจะไม่เป็น gnuwin32) โดยที่คุณสามารถคัดลอกและวางผ่านบรรทัดคำสั่ง

note- gnuwin32 อาจไม่ได้รับการอัพเดตเช่นกัน

C:\unxutilsblah\usr\local\wbin>echo a|gclip <-- copy a to clipboard

C:\unxutilsblah\usr\local\wbin>pclip  
a

C:\unxutilsblah\usr\local\wbin>

ทราบ - คุณสามารถคัดลอก wbin ทั้งหมดไปยังเช่นc:\unxutilsและ EXEs ไม่มีการขึ้นต่อกัน / ที่กำลัง

และแน่นอนคุณสามารถทำ pclip> aa เพื่อวางไฟล์ หรือ pclip | somecmd

C:\>(echo b & echo a)<ENTER>
b
a

C:\>

C:\unxutils>(echo b & echo a)|gclip<ENTER>


C:\unxutils>pclip<ENTER>
b
a

C:\unxutils>pclip|sort<ENTER>
a
b

C:\unxutils>

ในบันทึกย่อที่เกี่ยวข้องในหน้าต่าง cmd ให้คลิกซ้ายที่มุมบนซ้ายจากนั้นเลือกคุณสมบัติจากนั้นในแท็บตัวเลือกให้ทำเครื่องหมายในช่องที่ระบุว่าโหมด quickedit ตอนนี้คุณสามารถคัดลอก / วางอย่างรวดเร็ว คลิกค้างไว้แล้วลากด้วยเมาส์เหนือสิ่งที่คุณต้องการคัดลอกการเลือกกด ENTER เพื่อคัดลอก คลิกขวาเพื่อวาง
barlop

และเพื่อวางในบรรทัดคำสั่งให้คลิกเมาส์ขวา เพื่อให้อยู่ในแบทช์ไฟล์คุณจะต้องเขียนสคริปต์เล็ก ๆ หรือเรียกใช้งานได้ในภาษาอื่นเช่น vbs, perl, c เพื่อทำมันหรือคอมไพล์ใครบางคน elses stackoverflow.com/questions/1704455/… btw, .vbs ใช้ wshextra .dll set clip = createobject ("WshExtra.Clipboard") ดูเหมือนว่า Perl จะทำในสองบรรทัดเล็ก ๆ และไม่ต้องการไฟล์เพิ่มเติม
barlop

และหน้าเว็บในเว็บไซต์ของ petri ที่กล่าวถึงแม้ว่าคนอื่น ๆ จะลิงค์ไปยังไฟล์ petri.co.il/quickly_copy_error_and_display_messages.htm
barlop

ลิงค์ดังกล่าวกล่าวถึงบล็อกโพสต์ chen raymond แต่ยังแสดงความคิดเห็นเกี่ยวกับคำตอบที่มีในลิงค์นี้กล่าวถึงความคิดเห็นในโพสต์ raymond chen ที่ใช้ unxutils gclip และ pclip stackoverflow.com/questions/1704455/…
barlop

2
อย่างไรก็ตามฉันเห็นว่า clip.exe นั้นพร้อมใช้งานใน Windows 10
Bill Rodman

26

ตัวเลือกของ barlop ไม่ถูกต้องทั้งหมดเนื่องจากechoจะเพิ่มอักขระบรรทัดใหม่ให้กับรหัสผ่านของคุณ

สิ่งที่คุณต้องใช้แทนคือ:

echo|set /p=MyPassWord|clip

วิธีนี้สตริงจะถูกคัดลอกไปยังคลิปบอร์ดตามที่เป็นอยู่


1
นี่ควรเป็นคำตอบที่ยอมรับได้ ช่วยฉันด้วยอักขระบรรทัดใหม่และเครื่องหมายคำพูด
Piotr Sobczyk

ควรเพิ่งแก้ไขคำตอบที่มีอยู่
endolith

@endolith ฉันไม่มีสิทธิ์ทำเช่นนั้นในเวลานั้น
Asu

ไม่เหมือนจริง: พื้นที่ว่างจะต่อท้าย
ธีรี่ร์ดาลอน

@ThierryDalon "| คลิป" ในตอนท้ายจะลบช่องว่างออกดังนั้นคุณไม่ควรต่อท้าย
Asu

1

AutoIt v3สามารถทำให้ windows เป็นอัตโนมัติซึ่งทำให้การพยายามล็อกอินหลายครั้งทำได้ง่าย

AutoIt v3 เป็นภาษาสคริปต์พื้นฐานฟรีแวร์ที่ได้รับการออกแบบมาสำหรับการใช้งาน Windows GUI และการเขียนสคริปต์ทั่วไปโดยอัตโนมัติ มันใช้การรวมกันของการกดแป้นพิมพ์แบบจำลองการเคลื่อนไหวของเมาส์และการควบคุมหน้าต่าง / การควบคุมเพื่อให้งานโดยอัตโนมัติในวิธีที่เป็นไปไม่ได้หรือเชื่อถือได้กับภาษาอื่น ๆ (เช่น VBScript และ SendKeys) AutoIt ยังมีขนาดเล็กมากอยู่ในตัวเองและจะทำงานบน Windows ทุกรุ่นนอกกรอบโดยไม่ต้อง "runtimes" ที่น่ารำคาญ!

AutoIt ได้รับการออกแบบมาสำหรับพีซีที่ "เปิดตัว" สถานการณ์เพื่อให้อัตโนมัติและกำหนดค่าพีซีนับพัน เมื่อเวลาผ่านไปมันได้กลายเป็นภาษาที่มีประสิทธิภาพที่รองรับการแสดงออกที่ซับซ้อนฟังก์ชั่นผู้ใช้ลูปและทุกอย่างอื่นที่คาดว่าจะได้รับประสบการณ์

พวกเขามีตัวอย่างที่ดีเอกสารและชุมชนที่แข็งแกร่งที่สามารถช่วยคุณแก้ปัญหาสคริปต์

แม้ว่าคุณอาจจะดีกว่าถ้าถามว่าพวกเขาสามารถแก้ปัญหาเซิร์ฟเวอร์ที่โอเวอร์โหลดได้หรือไม่เนื่องจากคำขออัตโนมัติอาจทำให้ปัญหานั้นแย่ลงสำหรับพวกเขา ...


เครื่องมือนี้มีประโยชน์มาก แต่ฉันจะใช้คู่มือ Ctrl - V มันจะไม่ใช้เวลานานกว่านี้ฉันไม่ต้องพิมพ์รหัสผ่านหรือกด Ctrl-C ด้วยตนเอง
Sébastien

1
@ เซบาสเตียน: ฉันไม่เข้าใจคุณกำลังขอสคริปต์เพื่อช่วยให้คุณกรอกรหัสผ่านได้ง่ายขึ้นและเพียงแค่ยอมรับวิธีแก้ปัญหาที่คัดลอก / วาง คุณรู้หรือไม่ว่าถ้าคุณเลือกวงกลมรหัสผ่านในกล่องรหัสผ่านที่คุณสามารถคัดลอก / วางได้จากที่นั่น โปรดทราบว่าคุณสามารถโหวตคำตอบด้วยลูกศรด้านบนหมายเลขเพื่อตอบแทนชื่อเสียง
Tamara Wijsman

1
คำตอบแรกจริงตอบสนองความต้องการ (ขั้นพื้นฐานสวย) ฉันอธิบายในคำถาม ตอนนี้เมื่อฉันต้องการที่จะใช้ระบบอัตโนมัติขั้นตอนต่อไปฉันจะดูที่ AutoIt;) [และเกี่ยวกับ 'โหวต' ฉันยังไม่มีชื่อเสียงสำหรับมันเลย]
Sébastien

"วงกลมรหัสผ่าน" คุณหมายถึงดอกจันหรือไม่ พวกเขาไม่ใช่แวดวง! ลองพิมพ์ด้วยตัวอักษรขนาดใหญ่ใน Ms Word ;-) ใช่ไหมฉันเดาว่าซอฟต์แวร์บางตัวใช้วงการ!
barlop

@barlop: ไม่ใช่ไม่ใช่เครื่องหมายดอกจัน แวดวงผิดปกติฉันคิดว่าพวกเขาเรียกว่า "จุด" ดูรูปนี้ ครั้งต่อไปฉันจะพิมพ์ "ตัวอักษรรหัสผ่าน" ซึ่งจะทำให้ฉันปลอดภัยจนกว่าจะมีใครบางคนประดิษฐ์ "รหัสผ่านตัวเลข" ...
Tamara Wijsman

1

ฉันพบสถานการณ์ที่คล้ายกันแล้วและนี่คือวิธีที่ฉันแก้ไข

ก่อนอื่นฉันจะจัดเก็บรหัสผ่านไว้ใน Windows Credential Vault (Windows Vista ขึ้นไป) สำหรับเรื่องนี้ฉันใช้ไลบรารี่ของ Python แต่คุณก็สามารถใช้CredMan (Powershell)เพื่อจัดการมันได้เช่นกัน การใช้ Windows Credential Vault หมายความว่าไม่จำเป็นต้องพิมพ์รหัสผ่านบนบรรทัดคำสั่งดังนั้นจึงไม่น่าจะรั่วไหล (เช่นผ่านประวัติบรรทัดคำสั่ง)

สองฉันใช้เครื่องมือเช่นคลิปเพื่อคัดลอกรหัสผ่านไปยังคลิปบอร์ด

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

$cred = Read-Creds 'Some System'
[Windows.Forms.Clipboard]::SetText($cred.CredentialBlob)

จากนั้นสิ่งที่คุณต้องทำคือเพิ่มรหัสผ่านไปที่ 'ระบบบางอย่าง' ใน Windows Credential Manager และสคริปต์นั้นจะใส่รหัสผ่านบนคลิปบอร์ดตามคำสั่งอย่างน่าอัศจรรย์


1
ขอขอบคุณ; ฉันจะแนะนำให้ใช้ Powershell เพื่อเข้าถึงคลิปบอร์ด โปรดทราบว่าคุณสามารถใช้powershell -c <command>จากภายใน CMD ดังนั้นถ้าจริง ๆ แล้วมันจะต้องเป็นไฟล์แบทช์ก็สามารถใช้บางอย่างเช่นpowershell -c [Windows.Forms.Clipboard]::SetText(%PASSWORD%)หลังจาก CMD ถูกใช้เพื่อโหลดรหัสผ่านลงในตัวแปร (ชั่วคราวโปรด!)% PASSWORD%
CBHacking

0

วิธีที่ง่ายที่สุดในการทำเช่นนี้คือ:

  1. เปิด Notepad
  2. คัดลอก [ CTRL+ C] บรรทัดนี้:
  3. ECHO | SET /P=mypassword | CLIP
  4. วาง [ CTRL+ V] บรรทัดนี้เพื่อ Notepad
  5. และเปลี่ยน "mypassword" สำหรับข้อความของคุณจากนั้นบันทึกเป็น "ชื่อไฟล์" .bat

และคุณสามารถแก้ไขข้อความที่คัดลอกนี้เมื่อใดก็ตามที่คุณต้องการเพียงแค่แก้ไขไฟล์นี้ด้วย Notepad


-1 คุณควรสรุปคำตอบนี้ในประโยคเดียวที่ด้านบนสุดก่อนถึงขั้นตอนลูกน้อยของคุณ (ถ้าคุณรวมขั้นบันไดเด็กไว้ด้วย) และบทสรุปนั้นจะช่วยให้ผู้คนที่มีเทคนิคไม่ต้องอ่านขั้นตอนทั้งหมดของลูกน้อย ผู้ถามรู้วิธีเขียนสคริปต์เพื่อให้เขารู้ว่าสำเนา ctrl-c ไปยังคลิปบอร์ดและวาง ctrl-v ตามที่ผู้ใช้ส่วนใหญ่จะเป็นซึ่งเป็นที่เว็บไซต์นี้มีไว้สำหรับ .. แน่นอนคำตอบของคุณจะถูกจัดเรียงโดยผู้อื่น คุณเพิ่งเพิ่มขั้นตอนเด็ก ๆ ที่ผู้ถามไม่จำเป็น
barlop

1
และคุณควรระบุว่าคุณไม่ได้เสนอวิธีแก้ไขปัญหาใหม่ที่นี่เพียงอธิบายรายละเอียดที่ระบุไว้แล้ว
barlop

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