循环替换脚本
1. 求助用autohotkey编写键盘替换脚本
;定义变量
toggle=0
`::
;~
toggle=1
Return
~Space::
;加~发送原有按键
toggle=0
Return
$q::
;加$屏蔽脚本按键
iftoggle=1
{
Send,{7Down};第一次按下一秒内只发送一次
KeyWait,q,T1
Loop
{
GetKeyState,枯野q_state,q,P;检测q的状态
ifq_state=U
{
Send,{7Up};抬起
Break;中断循环
}
Else
{
Send,{7Down};按下
}
Sleep,30;休息30ms
}
}
iftoggle=0
{
Send,{qDown};第一次按下一秒内只发送一次
KeyWait,q,T1
Loop
{
GetKeyState,q_state,q,P;检测q的状态
ifq_state=U
{
Send,{qUp};抬起
Break;中断循环
}
Else
{
Send,{qDown};按下
}
Sleep,30;休息30ms
}
}
Return
$w::
;加$屏蔽脚本按键
iftoggle=1
{
Send,碧败橡{8Down};第一次按下一秒内只发送一次
KeyWait,w,悔旁T1
Loop
{
GetKeyState,w_state,w,P;检测q的状态
ifw_state=U
{
Send,{8Up};抬起
Break;中断循环
}
Else
{
Send,{8Down};按下
}
Sleep,30;休息30ms
}
}
iftoggle=0
{
Send,{wDown};第一次按下一秒内只发送一次
KeyWait,w,T1
Loop
{
GetKeyState,w_state,w,P;检测q的状态
ifw_state=U
{
Send,{wUp};抬起
Break;中断循环
}
Else
{
Send,{wDown};按下
}
Sleep,30;休息30ms
}
}
Return
2. 按键精灵怎么用一次脚本间隔1小时在循环
1、首先打开按键精灵,点击需要设置循环的脚本,再点击后方的【属性】。
3. 请问怎么在shell脚本中,替换文件多行里面的指定字符串
sed-i'/aaa/{:a;n;s/123/xyz/g;/eee/!ba}'yourfile
先匹配aaa,匹配到后执行大括号里的语句。
n 读取下一行
s/123/xyz/g 将123替换为xyz,全局替换,同一行中出现几次替换几次
:a 设定跳转标签a
/eee/!ba 若当前行匹配不上eee,则跳转到标签a处继续执行,构成一个循环。若匹配到eee,则退出循环,sed重新对读入的每行匹配aaa。
由于sed没有加-n静默选项,所以默认对每行数据处理后都打印。
4. excel中有全角字符,比如:“12 等,如何用VBA脚本批量替换
使用 for next 循环 逐一替换呗!
将下面的代码 插入 你的文档 模块中……然后执行 就把工作不中所有的表中的全角变成了半角
根据你自己的实际需要修改吧!
祝你快乐!
Sub test()
Dim mycel As Range
For i = 1 To ActiveWorkbook.Sheets.Count
Sheets(i).Select
For Each mycel In Sheets(i).UsedRange
mycel = WorksheetFunction.Asc(mycel)
Next
Next
MsgBox "恭喜你该工作簿中的所有全角字符都已经被替换成半角的了 "
End Sub
5. shell脚本 批量替换文件 重金酬谢
我理解一下,你的意思只是想把2012-01-01.txt里的year-month-day改成跟文件名一样是吗?
如果是这样,可以这么写。
1.所有文件名存一个数组。
2.依次调用数组元素,然后用sed替换文本里的内容就行了。
6. 按键精灵怎样设置:循环某脚本100次后切换至另一个脚步
你其实可以利用子程序的方法,不一定要分两个脚本,例如这个
Rem c
//这些是判断a脚本是否运行了悔册100次
If n=100 Then
Call b()
//b程序是在a脚本运行100次之后才运行的
Else
For 100
Call a()
n=n+1
Next
Goto c
End If
//-----分割线------
Sub a()
//这里填写你想要运行100次的脚本碧耐宏
End Sub
Sub b()
//这里填写你运行100次a脚本之后运行的b脚本
End Sub
(我是新手,这个亩猜脚本在我的电脑上测试可以使用。。但是我只是告诉你方法。。。你要用我这个我没意见。。只是运行不了的话不要骂我。。。)
7. bat 替换字符串
::关闭回显&窗口标题
@echooff&title切换语言By依梦琴瑶
::开启环境变量延迟
::设置painter.ini文档所在的主目录,如果直接在脚本所在目录搜索,请直接写一个英文小数点
setIniDir=.
::跳转目录
cd/d"%IniDir%"
::搜索painter.ini文件,包括子目录
for/f"delims="%%ain('dir/a-d/s/bpainter.ini')do(
rem读取搜索到的文件内容,这里for前面加个(,主要用于把此for中执行过程中显示的内容进行输出
(for/f"eol=delims="%%bin('type"%%~a"')do(
rem设置行内容到Str变量
set"Str=%%~b"
rem显示Str变量值,并传递到findstr命令进行查找zh_CN字符串,>nul2>nul用于屏蔽反馈提示
rem&&表示findstr找到指定字符串后要准备执行什么
echo"!Str!"|findstr/c:"zh_CN">nul2>nul&&(
rem显示替换zh_CN为en_US后的Str变量值
echo!Str:zh_CN=en_US!
rem设置一个空值的local变量,主要用于后续窗口中文字提示的判断
set"local="
rem||表示findstr找不到指定字符串后要准备执行什么
)||(
rem显示Str变量值,并传递到findstr命令进行查找en_US字符串,>nul2>nul用于屏蔽反馈提示
rem&&表示findstr找到指定字符串后要准备执行什么
echo"!Str!"|findstr/c:"en_US">nul2>nul&&(
御枯rem显示替换en_US为zh_CN后的Str变量值
echo!Str:en_US=zh_CN!
rem设置一个值为1的local变量,主要用于后续窗口中文字提示的判断
set"local=1"
rem||表示findstr找不到指定字符串后要准备执行什么
)||(
rem显示没有相关字符串的Str变量值
echo!Str!
rem结束第二次findstr命令的处理过程
)
rem结束第一次findstr命令的处理过敏拆歼程
)
rem结束第二次for命令的处理过程,并输出上面执行时显示的内容到Ini_tmp$文件
))>Ini_tmp$
rem判断local变量是否被定义值,
ifdefinedlocal(
rem如果被定义就直接在CMD窗口中显示下方一行内容
echoen_US--^>zh_CN
桥冲
rem如果没有被定义
)else(
rem就显示下方一行内容
echozh_CN--^>en_US
rem结束if判断语句
)
rem移动Ini_tmp$,并覆盖搜索到的painter.ini文件,以达到修改的目的
move/yIni_tmp$"%%~a">nul2>nul
rem结束第一次for,也就是搜索文件的处理过程
)
rem暂停脚本
pause
这样的脚本和每行注释,应该能看的明白了吧!