返回列表 发帖
回复 15# pengyou86
说实话,用批处理操控剪切板还蛮麻烦的,遂用au3,本想编译成exe贴上来的,但是不能上传50K以上的文件。。。要用就qq联系我吧
Local $line,$s
For $i=1 To 48
  $line=FileReadLine("1.txt",$i)
  $s&=@CRLF & $line
Next
ClipPut($s)COPY
看得多说得多,远比不上写得多。

TOP

回复 16# weichenxiehou


    好的 我申请加你的QQ了

TOP

回复 16# weichenxiehou


    Win7系统有clip命令
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 18# Batcher
soga,我对批处理的探索和认识还停留在xp阶段。
看得多说得多,远比不上写得多。

TOP

用 more 就好:
@more +48 1.txtCOPY

TOP

回复 20# CrLf


    麻烦写个完整的吧 我是个菜鸟  谢谢

TOP

回复 21# pengyou86


有clip命令的话可以如此:
@more +48 1.txt|clipCOPY
xp可以如此(借鉴demon的vbs方案):
@set @n=0;//&goto bat
var Form = new ActiveXObject('Forms.Form.1')
with(Form.Controls.Add("Forms.TextBox.1").Object)
{
MultiLine = true
Text = WScript.StdIn.ReadAll()
SelStart = 0
SelLength = TextLength
Copy()
}
/*
:bat
@more +48 1.txt|cscript -e:jscript %0
pause
:*/COPY

TOP

来个ahk:
text := ""
Loop, Read, 1.txt
   if (A_Index>48)
      text := text A_LoopReadLine "`r`n"
clipboard := text
returnCOPY
au3 和 ahk 处理人机交互真给力

TOP

这个好 mark一下 留着用.
学习了..

TOP

本帖最后由 terse 于 2014-1-25 20:53 编辑

纯P 环境 WIN7
@echo off&setlocal enabledelayedexpansion
(for /f "delims=" %%i in (1.txt) do set /an+=1&if !n! leq 48 echo %%i)>$
clip<$
>$ more +48 1.txt
move $ 1.txt
pauseCOPY
@echo off&setlocal enabledelayedexpansion
del $* 2>nul
for /f "delims=" %%i in (1.txt) do set /an+=1&if !n! gtr 48 (>>$$ echo %%i)else >>$ echo %%i
clip<$&move $$ 1.txt >nul&del $*
pauseCOPY

TOP

谢谢上面各位高手测试没有一个能用的

TOP

麻烦高手再帮忙一下

TOP

1       14楼 ,我手误搞成38行了,抱歉.
2  [1.txt文本中去掉48行内容 然后把剪切去掉48行的内容保存到剪切板就可以了]    ----这句话如何理解?首先声明,我个人理解能力太差,但我认为你说的太渣!

这句话我理解为,把1.txt中从49行到文本文件末尾(1万多行)复制到剪贴板.但是原来楼主说的是把1---48行放入剪贴板,这是完全相反的,而且大家回的代码都是[取]1---48行,而不是[弃]!
脚本是写给人看的,是写给用户看的,而不是写给机子看的
用户能看懂、会修改的脚本,才是好脚本。
写易懂的powershell脚本帮人解决问题,进而让用户学会自渔,吾所愿也

TOP

1       14楼 ,我手误搞成38行了,抱歉.
2  [1.txt文本中去掉48行内容 然后把剪切去掉48行的内容保存到剪切 ...
PowerShell 发表于 2014-1-25 22:01



    对我的描述可能有问题 你说的对

TOP

本帖最后由 CrLf 于 2014-1-26 02:39 编辑

是这意思吧:
@set @n=0;//&goto bat
var Form,i,str=''
for(i=0;i<3;i++)str+=WSH.StdIn.ReadLine()+'\r\n'
with(new ActiveXObject('Forms.Form.1').Controls.Add("Forms.TextBox.1").Object)
{
        MultiLine = true
        Text = str
        SelStart = 0
        SelLength = TextLength
        Copy()
}
WSH.Echo(WSH.StdIn.ReadAll())
/*
:bat
@<1.txt cscript -nologo -e:jscript %0|sort /+9999|sort /+9999 /o 1.txt
pause
:*/COPY
要求有变动最好也能更新到顶楼
1

评分人数

TOP

返回列表