คำถามติดแท็ก batch-file

ชุดไฟล์เป็นไฟล์ข้อความที่มีชุดคำสั่งที่ดำเนินการโดยล่ามคำสั่งในระบบ MS-DOS, IBM OS / 2 หรือระบบ Microsoft Windows

1
จะแยกข้อความบางส่วนโดยใช้ PowerShell ได้อย่างไร?
ฉันได้สร้างไฟล์ bat เพื่อรับไอพีสาธารณะของฉันและเขียนมันลงในไฟล์ txt; powershell -Command "curl icanhazip.com > PATH/output.txt" powershell -Command "Start-Sleep -s 1" powershell -Command "(Get-Content PATH/output.txt)[4] > PATH/ip.txt" บรรทัดแรกได้รับข้อมูลจำนวนมากซึ่งมี IP สาธารณะของฉันที่บรรทัดที่สี่ของไฟล์เอาต์พุต บรรทัดที่สามรับบรรทัดที่สี่จากไฟล์เอาต์พุตและเขียนไปยังอีกบรรทัด ถ้าอย่างนั้นฉันก็เหลือเรื่องนี้: Content : xxx.xxx.xxx.xxx ฉันต้องการแยกเฉพาะไอพี กล่าวอีกนัยหนึ่งฉันต้องการลบ Content : จากไฟล์ข้อความ ส่วนนี้จะไม่เปลี่ยนแปลงและมีจำนวนตัวอักษรคงที่ อาจมีรหัสสำหรับการลบอักขระจำนวนมากตั้งแต่ต้นข้อความใช่ไหม ฉันไม่พบคำสั่งดังกล่าว ฉันจะทำสิ่งนั้นได้อย่างไรโดยไม่ใช้อะไรนอกจากคำสั่ง bat และคำสั่ง powershell ฉันอยากได้ไฟล์นี้ทั้งหมดในไฟล์แบ็ตเดียว (ฉันไม่เข้าใจ vbs และทำให้ฉันกลัว) โปรดยิงความคิดของคุณมาที่ฉันสิ ขอบคุณล่วงหน้า. :)

2
ปัญหาในไฟล์แบทช์
ฉันพยายามเรียกใช้รหัสนี้: Set a = "c:\a" set b = "c:\b" xcopy /d /y %a %b แต่ฉันไม่รู้ว่าทำไมมันถึงจำเส้นทางที่สองไม่ได้ การส่งออกในรูปแบบ cmd เป็นเหมือน xcopy /d /y c:\a ไม่มีใครรู้ว่าทำไม

2
คำสั่งไม่พบเซิร์ฟเวอร์ CentOS 6
ฉันพยายามเรียกใช้.batไฟล์บนเซิร์ฟเวอร์ของฉันผ่านคำสั่ง php popen, ive พยายามและในที่สุดก็มาถึงจุดที่การตั้งค่าการอนุญาตทั้งหมดถูกต้องและตอนนี้ฉันสามารถรันไฟล์ได้จริง แต่ฉันมีปัญหา ในบันทึกเซิร์ฟเวอร์ของฉันมันจะปรากฏขึ้น foo.bat: line 1: mstsc: command not found, referer: http://dev.example.com รหัสเต็มในไฟล์คือmstsc /v:192.168.1.1ฉันรู้ว่านี่หมายความว่ามันไม่รู้จักคำสั่งใน centos แต่ฉันไม่แน่ใจว่าจะทำอย่างไรเพื่อแก้ไขปัญหา จุดประสงค์ของรหัสนี้คือการเปิด RDP สำหรับผู้ใช้ที่ร้องขอ จำไว้ว่ารหัสนี้ทำงานได้อย่างสมบูรณ์แบบในระบบปฏิบัติการ Windows ของฉันโดยใช้ xampp แต่เมื่อฉันอัปโหลดไปยังเซิร์ฟเวอร์ที่ใช้ CENTOS มันไม่ทำงาน คำถามของฉันคือ ฉันจะแก้ไขข้อผิดพลาดนี้ได้อย่างไรและอนุญาตให้ CENTOS ดำเนินการคำสั่งที่เปิดหน้าต่าง RDP สำหรับผู้ใช้

2
พา ธ เปลี่ยนไฟล์. bat ใน% PATH% ได้อย่างไร
ฉันมีปัญหาอธิบายไว้ที่นี่ (คุณสามารถอ่านเพื่อความเข้าใจที่ดีขึ้น) ฉันต้องเขียนไฟล์. bat ที่เปลี่ยนพา ธ ตัวอย่างเช่น: ขณะส่งคำสั่งเป็น cmd: cd ~ ฉันต้องการไปที่% HOMEPATH% อันที่จริง - ฉันแค่ต้องการแทนที่ ~ โดย% HOMEPATH% ในทุกคำสั่งที่มีไดเรกทอรี ฉันจะทำให้สำเร็จได้อย่างไร ฉันอ่านที่นี่ว่าฉันต้องใส่พา ธ การเปลี่ยนไฟล์. bat ใน% PATH% ทำอย่างไร? และวิธีการรหัสเส้นทางที่เปลี่ยนฟังก์ชั่นในภาษาสคริปต์ Windows? คำแนะนำใด ๆ ที่จะได้รับการชื่นชม ;)


0
วิธีการเปลี่ยนไดเรกทอรีเป็นปัจจุบันใน Far Manager
fm.batฉันต้องการให้นามแฝง มันควรจะเริ่มต้น Far Manager, แผงด้านซ้าย: ซีดีไปยังไดเรกทอรีปัจจุบัน (ไม่%FARHOME%) และด้านขวา: %windir&ซีดีไปเช่น ไฟล์ชุดของฉัน: @echo off "C:\Users\Marcin\AppData\Local\Far Manager\far.exe" % cd \ จะเปิด FM และแผงซีดีด้านซ้ายไปC:\อีกอาร์กิวเมนต์ควรกำหนดพฤติกรรมของแผงด้านขวา แต่จะเปิดไดเรกทอรีของ FM เริ่มต้นแทน

1
การหายไปของข้อผิดพลาดของตัวดำเนินการในชุดถอดรหัสของฉัน
โปรแกรมถอดรหัสนี้ให้โหลดข้อผิดพลาดของตัวดำเนินการที่หายไป เกิดอะไรขึ้น? @echo off setlocal EnableDelayedExpansion ::OS_sertificate set code=494715842 set /p sertificate=input set chars=0123456789abcdefghijklmnopqrstuvwxyz for /L %%N in (10 1 36) do ( for /F %%C in ("!chars:~%%N,1!") do ( set /A math=%%N+%code%+2*2,74:2 for /F %%F in ("!math!") do ( set "sertificate=!sertificate:%%N=-%%C!" ) ) ) for /F %%F in ("!sertificate!") …

1
เพิ่มคำสั่ง ImageMagick ใหม่ในแบตช์ไฟล์ที่มีอยู่
ฉันมีไฟล์ชุดนี้: for %%f in (*.svg) do ( "C:\Program Files\Inkscape\inkscape.com" ^ -z ^ --export-background-opacity=0 ^ --export-height=256 ^ --export-png="%%~nf_256x256.png" ^ --file="{%%~f}" "C:\Program Files\Inkscape\inkscape.com" ^ -z ^ --export-background-opacity=0 ^ --export-height=128 ^ --export-png="%%~nf_128x128.png" ^ --file="%%~f" "C:\Program Files\Inkscape\inkscape.com" ^ -z ^ --export-background-opacity=0 ^ --export-height=64 ^ --export-png="%%~nf_64x64.png" ^ --file="%%~f" "C:\Program Files\Inkscape\inkscape.com" ^ -z ^ --export-background-opacity=0 ^ …

1
มีปัญหาในการล้างไดเรกทอรีและอัปโหลดไฟล์ผ่านไฟล์แบตช์
ฉันใช้ Filezilla-Server บนเซิร์ฟเวอร์ Windows 2012R2 Standard ฉันพยายาม ftp in และส่งไฟล์จากเซิร์ฟเวอร์ Windows 2012R2 มาตรฐานอื่น ฉันกำลังเรียกใช้ไฟล์แบตช์นี้: @echo off cls echo open xxx.xxx.xxx.xxx> ftpcmd.dat echo user xxxxxxxxx>> ftpcmd.dat echo xxxxxxxx>> ftpcmd.dat echo bin>> ftpcmd.dat echo lcd %1>> ftpcmd.dat echo lcd %1zip>> ftpcmd.dat echo pwd>> ftpcmd.dat echo mdelete *>> ftpcmd.dat echo mkdir %1>> ftpcmd.dat …

1
การซิปไฟล์ตามชื่อไฟล์
ทุกวันเราได้รับห้าไฟล์ดังนี้: vi_250000364846.dqa_report.xlsx vi_250000364846.3553_report vi_250000364846.MSR_report vi_250000364857.3553_report vi_250000364857.dqa_report.xlsx หมายเลขในชื่อไฟล์แตกต่างกันในแต่ละวัน แต่จะเหมือนกันสำหรับสามไฟล์ที่ต้องการ ฉันต้องส่งไฟล์ทั้งสามไปที่โฟลเดอร์ zip ที่ถูกบีบอัดเท่านั้น ฉันเขียนโค้ดต่อไปนี้ แต่ใช้ไฟล์แรกหลายครั้งและแสดงค่าเดียวกันห้าครั้ง: @echo on set LOGFILE=batch.log call :LOG > %LOGFILE% exit /B :LOG setlocal EnableDelayedExpansion set n=0 set count=0 set vector[%n%]=0 for /f "tokens=* delims=." %%i in ('dir /b /a-d "C:\Test"') do ( set filename=%%i for /f "tokens=2 delims=_." …

0
CMD ที่ไร้ค่าเทียบเท่ากับ <การเปลี่ยนเส้นทาง
ฉันมีชุดที่ตัด AnyConnect Mobility Client CLI (vpncli.exe) และขอชื่อผู้ใช้และรหัสผ่านเพื่อจัดการกับ vpncli ในภายหลัง รหัสย่อ: set /p user_id=Username: set /p pwd=Password: echo %user_id%&gt; c:\temp\configvpn.txt echo %pwd%&gt;&gt; c:\temp\configvpn.txt set install_dir="C:\Program Files (x86)\Cisco\Cisco AnyConnect Secure Mobility Client" %install_dir%\vpncli.exe connect myvpn.mydomain.TLD -s &lt; c:\temp\configvpn.txt net use h: \\fileserver\sharename /user:domain\%user_id% %pwd% บรรทัดสุดท้ายคือสาเหตุที่เราทำเช่นนี้: เพื่อไม่ให้รหัสผ่านผู้ใช้สองครั้ง (ครั้งแรกสำหรับการเชื่อมต่อ VPN และแผนที่เครือข่ายไดรฟ์ที่สอง) เพื่อเหตุผลด้านความปลอดภัยฉันกำลังปรับปรุงสคริปต์ไม่ให้เขียนรหัสผ่านลงดิสก์ ฉันต้องการสิ่งที่ไร้ค่าของ "&lt;c: …

1
ใช้ PSFTP เพื่อส่งไฟล์ไปยังเซิร์ฟเวอร์ระยะไกล
ฉันมีไฟล์แบ็ตฉันโทรทุกคืนเพื่อถ่ายโอนไฟล์บางไฟล์ ฉันต้องการนำไฟล์จากคอมพิวเตอร์ไปยังเซิร์ฟเวอร์ระยะไกลของฉัน ฉันติดตั้ง PSFTP แล้วและฉันไม่รู้วิธีการใช้ในลักษณะแบทช์ ฉันใส่สิ่งนี้: CD /D C:\Users\Vincent\Desktop psftp user@99.99.99.99 -pw password -P port put file.csv /remote/folder/file.csv แต่เมื่อฉันเรียกไฟล์ BAT ของฉันมันติดอยู่ที่: psftp &gt; _ ฉันจะใช้เป็นโหมดอัตโนมัติได้อย่างไร

2
เป็นไปได้ไหมที่จะใช้ไฟล์. bat เพื่อปิด 'ตัวบ่งชี้สัญญาณเข้า' เมื่อ Windows เริ่มทำงาน?
http://www.thewindowsclub.com/turn-off-language-bar-windows ฉันใช้ Windows 10 และได้ทำสิ่งต่อไปนี้ตามคำแนะนำด้านบน 'ใช้แถบภาษาเดสก์ท็อปเมื่อพร้อมใช้งาน' ถูกปิดใช้งานใน 'การตั้งค่าขั้นสูง' 'แถบภาษา' ได้รับการตั้งค่าเป็น 'ซ่อน' ใน 'บริการข้อความและภาษาที่ป้อน' 'ตัวบ่งชี้การป้อนข้อมูล' ถูกปิดใน 'เปิดหรือปิดไอคอนระบบ' อย่างไรก็ตาม 'ตัวบ่งชี้การป้อนข้อมูล' จะเปิดใช้งานตัวเองอีกครั้งหลังจากรีบูตทุกครั้ง เป็นไปได้ไหมที่จะใช้ไฟล์. bat เพื่อปิดเมื่อ Windows เริ่มทำงาน

1
วิธีทำให้ dir แสดงเฉพาะข้อมูลไฟล์
ฉันกำลังเตรียมแบทช์ไฟล์ที่ทำสำเนาไฟล์บางไฟล์เพื่อแสดงในบันทึกหากมีไฟล์ต้นฉบับอยู่ฉันต้องการเพิ่มบรรทัด "dir sourcefile" แต่ฉันจะ จำกัด ผลลัพธ์เฉพาะข้อมูลไฟล์ได้อย่างไร เช่นด้านล่างคือผลลัพธ์ C:\Program Files\X Codec Pack&gt;dir readme.txt Volume in drive C is Windows 7_x64 Volume Serial Number is EEEE-FFFF Directory of C:\Program Files\X Codec Pack 03/06/2014 03:49 PM 835 Readme.txt 1 File(s) 835 bytes 0 Dir(s) 123,456,789,012 bytes free อย่างไรก็ตามฉันต้องการเพียง 1 บรรทัดในล็อกไฟล์: 03/06/2014 03:49 PM …

1
ตั้งค่าความสั่นสะเทือนแบบดิจิตอลของ Nvidia เป็น 100 ด้วยไฟล์แบตช์
เป็นไปได้ไหม ฉันจะถูก stoked ถ้าฉันได้ทำงานนี้ มีเกมนี้ที่ฉันเล่นที่ฉันชอบเล่นด้วย Digital Vibrance ตั้งไว้ที่ 100% แต่ฉันเกลียดที่จะต้องเปิดแผงควบคุม NVIDIA ทุกครั้งที่ฉันต้องการเล่นและหลังจากฉันเปิดมันอีกครั้งและตั้งเป็นค่าเริ่มต้น (50%) ฉันใช้การ์ด GeForce 8600 GT รุ่นเก่า ฉันพยายามสร้างไฟล์แบตช์ด้วยเนื้อหานี้: @ECHO OFF C:\windows\system32\rundll32.exe C:\windows\system32\nvcpl.dll,dtcfg setdvc all 100 แต่มันจะไม่ตั้งเป็น 100 ตามที่ ลิงค์ มันควรจะทำงาน ตัวอย่าง: rundll32.exe NvCpl.dll,dtcfg setdvc all 16 Sets the digital vibrance on all of the displays supporting DVC to 20. …

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