导航:首页 > 程序命令 > linux批量执行命令

linux批量执行命令

发布时间:2022-09-06 16:17:25

‘壹’ 如何在linux下批量执行命令

把你的命令写入一个shell脚本就行了啊。
新建一个文本文件,然后给他赋予可执行权限就行了。
文本内容为

#/bin/bash
。。。你的命令

‘贰’ Linux批量替换多个文件中字符串

linux批量替换多个文件中字符串linux下批量替换多个文件中的字符串的简单方法。用sed命令可以批量替换多个文件中的字符串。
用sed命令可以批量替换多个文件中的字符串。sed
-i
s/原字符串/新字符串/g
`grep
原字符串
-rl
所在目录`例如:我要把mahuinan替换为huinanma,执行命令:sed
-i
s/mahuinan/huinanma/g
'grep
mahuinan
-rl
/www'这是目前linux最简单的批量替换字符串命令了!具体格式如下:sed
-i
s/oldString/newString/g
`grep
oldString
-rl
/path`实例代码:sed
-i
s/大小多少/日月水火/g
`grep
大小多少
-rl
/usr/aa`sed
-i
s/大小多少/日月水火/g
`grep
大小多少
-rl
./`

‘叁’ linux 如何快速给500 台机器 执行同一条命令

要实现批量部署,前提是标准化,和自动化
1.自动化可以完成大量重复性工作
2.标准化是部署对象必须有一定的标准
比如:账号user1密码是usr1,user2密码是usr2.。。

如题:
假设那500台机子IP为 192.168.1.1-250,192.168.2.1-250
第一种情况(简单):
管理节点已经ssh公钥传所有主机
[root@master ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)?
[root@master ~]# ssh--id /root/.ssh/id_rsa.pub 192.168.1.1
我们只要执行两个循环就能完成需求
for i in {1..250}; do ssh 192.168.1.$i "echo 1 > /etc/a.txt ";done
for i in {1..250}; do ssh 192.168.2.$i "echo 1 > /etc/a.txt ";done

第二种情况只能用密码登陆
要求是IP,密码必须满足标准化
我这边只有一个ssh捕捉信号的脚本(完成非交互式输入密码),虽然没有针对需求,但楼主可以参考下。结合第一种方法完成需求。
vim /ssh.sh
#!/usr/bin/expect
# 设置超时时间为 60 秒
set timeout 60
# 设置要登录的主机 IP 地址
set host 192.168.0.4
# 设置以什么名字的用户登录
set name root
# 设置用户名的登录密码
set password 123456
#spawn 一个 ssh 登录进程
spawn ssh $host -l $name
# 等待响应,第一次登录往往会提示是否永久保存 RSA 到本机的 know hosts 列表中;等到回答后,在提示输出密码;之后就直接提示输入密码
expect {
"(yes/no)?" {
send "yes\n"
expect "assword:"
send "$pasword\n"
}
"assword:" {
send "$password\n"
}
}
expect "#"
# 下面测试是否登录到 $host
send "uname\n"
expect "Linux"
send_user "Now you can do some operation on this terminal\n"
# 这里使用了 interact 命令,使执行完程序后,用户可以在 $host 终端进行交互操作。
Interact

‘肆’ Linux下如何像windows下那样制作批处理文件就是执行一批shell命令或可执行文件

csh, bash, 不管什么shell都可以把代码写成文件再执行,比windows的批处理功能强得多, 因而叫shell脚本程序而不是批处理文件了。
你可以把shell脚本保存为.sh文件, 第一行用#!/bin/[shell name]来说明执行所用的shell, 然后以防万一用chmod +x ***.sh来给文件可执行权限, 然后./***.sh来执行就好了。
shell脚本编程比bat文件复杂得多,你可以参考相关书籍。

‘伍’ linux下批量执行.sh文件

如果执行没有顺序的话,可以试试这个命令:

for filename in $( ls /opt/weblogic/jstx/bin); do sh "/opt/weblogic/jstx/bin/"$filename; done

上面的命令默认目录下所有文件都是.sh的,如果有其他格式的可以过滤以后在执行:

for filename in $( ls /opt/weblogic/jstx/bin |grep ".sh"); do sh "/opt/weblogic/jstx/bin/"$filename; done

如果需要开机启动这些脚本,可以将命令写到 /etc/rc.local

或者把命令写到脚本jiaoben.sh,然后sh jiaoben.sh:
#!/bin/bash
for filename in $( ls /opt/weblogic/jstx/bin|grep ".sh")
do
sh "/opt/weblogic/jstx/bin/"$filename
done
exit

‘陆’ 在linux终端中一次执行多条命令

命令中间加&&符号 例如 make && make install 代表前面的命令执行完毕在执行后面的
还有加管道符号 rpm -qa | wc -l 代表把前面命令执行结果作为后面命令的输入

‘柒’ linux怎样一次运行多个shell脚本

inux 下shell脚本执行多个命令的方法
1.每个命令之间用;隔开
说明:各命令的执行给果,不会影响其它命令的执行。换句话说,各个命令都会执行,但不保证每个命令都执行成功。
2.每个命令之间用&&隔开
说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,执行过程都是成功的。
3.每个命令之间用||隔开
说明:||是或的意思,只有前面的命令执行失败后才去执行下一条命令,直到执行成功一条命令为止

‘捌’ 在linux下创建可以运行批量处理命令的文件

可以的. 而且比windows的批处理强多了.
安卓也能运行, 语法可能小有不同.

‘玖’ 想做个linux下的脚本中,在原先的命令中需要在输入命令后手动输入一个yes后才能执行 我想批量执行命令

把test.sh脚本里的yes判断去掉就是了。。。

如果不想改,也很简单:

#!/bin/bash
foriin`cattest.txt`
do
echo"yes"|./test.sh-id$i
done
阅读全文

与linux批量执行命令相关的资料

热点内容
如何修改ie代理服务器 浏览:417
折纸手工解压玩具不用a4纸 浏览:485
怎么双向传输服务器 浏览:286
电脑如何实现跨网段访问服务器 浏览:549
模块化网页源码字节跳动 浏览:485
梯度下降算法中遇到的问题 浏览:605
服务器连接电视怎么接 浏览:323
phploop语句 浏览:500
交叉编译工具链里的库在哪 浏览:781
安卓手q换号怎么改绑 浏览:399
nba球星加密货币 浏览:789
命令看网速 浏览:124
java堆分配 浏览:161
linuxbuiltin 浏览:560
cstpdf 浏览:941
texstudio编译在哪 浏览:352
国家反诈中心app注册登记表怎么注册 浏览:972
加密机默认端口 浏览:101
有哪个网站有免费的python源代码 浏览:305
苹果手机如何导入安卓电话 浏览:915