linux下批量执行命令 linux可执行文件批量执行

linux怎么批量替换文件内容?方法一:
使用perl ,命令如下:
【linux下批量执行命令 linux可执行文件批量执行】 下面这个例子就是将当前目录及所有子目录下的所有pom.xml文件中的
”“
替换为
”“.
这里用到了Perl语言,
perl -pi -e 在Perl 命令中加上-e 选项,后跟一行代码,那它就会像运行一个普通的Perl 脚本那样运行该代码.
从命令行中使用Perl 能够帮助实现一些强大的、实时的转换 。认真研究正则表达式 , 并正确地使用 , 将会为您省去大量的手工编辑工作 。
方法二:
使用sed命令如下:
Linux下批量替换多个文件中的字符串的简单方法 。用sed命令可以批量替换多个文件中的字符串 。
例如:我要把aaa替换 为bbb,执行命令:
这是目前linux最简单的批量替换字符串命令了!
具体格式如下:
实例代码:
如何在linux下批量执行命令?把你的命令写入一个shell脚本就行了啊 。
新建一个文本文件,然后给他赋予可执行权限就行了 。
文本内容为
#/bin/bash
。。。你的命令
shell :linux sed 批量替换字符串Linux下批量替换多个文件中的字符串的简单方法 。用sed命令可以批量替换多个文件中的字符串 。
命令如下:
sed -i "s/原字符串/新字符串/g"grep 原字符串 -rl 所在目录
例如:我要把www目录下的所有文件里的 charset=gb2312 替换为 charset=UTF-8,执行命令:
sed -i "s/charset=gb2312/charset=UTF-8/g" `grep charset=gb2312 -rl /www`
即可 。
解释一下:
-i 表示inplace edit , 就地修改文件
-r 表示搜索子目录
-l 表示输出匹配的文件名
这个命令组合很强大,要注意备份文件 。
Linux多台主机批量执行命令指定一台主机作为信任主机,这样从这台主机登录其他机器就不需要密码了 。
设置信任主机:
假设有四台机器:192.168.2.1~192.168.2.4,其中192.168.2.1为信任机,那么在192.168.2.1上运行如下命令:
$.sh-keygen -t rsa //此处一路回车,生成秘钥
$scp .ssh/id_rsa.pub 192.168.2.2:~/ //把秘钥拷贝到其他远程机器
$ssh 192.168.2.2 ‘cat id_rsa.pub.ssh/authorized_keys’ //(远程执行命令)在远程机器上生成认证文件
经过这几步,从192.168.2.1 ssh登陆192.168.2.2时,就不会再需要输入密码了 。同样的步骤再执行3、4的极其 。
文本文件hostlist可以如下
192.168.2.2
192.168.2.3
192.168.2.4
#!/bin/shdoCommand(){
hosts=`sed -n'/^[^#]/p'hostlist`
forhostin$hosts
do
echo ""
echoHOST$host
ssh$host"$@"
done
return 0
}
if[$# -lt 1 ]
then
echo "$0cmd" exit
fi
doCommand "$@"
echo "return from doCommand"
执行命令(记得先对doCommand.s
h增加执行权限 chmod u x doCommand.sh)
./doCommand.sh “ls -al /root/”
这样该脚本就会在每台机器上执行”ls -al /root/”这个命令 , 并返回结果在信任主机上 。
linux下批量执行命令的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于linux可执行文件批量执行、linux下批量执行命令的信息别忘了在本站进行查找喔 。

    推荐阅读