首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
sh脚本里交互式命令自动填写
2024-09-04
shell脚本中的交互式输入自动化
shell中有时我们需要交互,但是呢我们又不想每次从stdin输入,想让其自动化,这时我们就要使shell交互输入自动化了. 1 利用重定向 重定向的方法应该是最简单的 例: 以下的test.sh是要求我们从stdin中分别输入no,name然后将输入的no,name打印出来 [root@localhost ~]# cat test.sh #! /bin/bash read -p "enter number:" number read -p "enter nam
bash脚本里su命令执行
俩种方法 1.可以使用 <<EOF 参数实现. 脚本内容:cat test.sh代码如下: #!/bin/bashsu - test <<EOFpwd;exit;EOF 2.当然也可以用下面的命令来执行 代码如下: su - test -c "pwd" ps:切换用户只执行一条命令的可以用: su - oracle -c command切换用户执行一个shell文件可以用:su - oracle -s /bin/bash shell.sh
linux sh 脚本调用外部命令
参考:http://blog.csdn.net/lhb_blog/article/details/22083649 ------------------------------------------------------------------------------------------------------------------------------------- bash shell的命令分为两类:外部命令和内部命令.外部命令是通过系统调用或独立的程序实现的,如sed.awk等
sh脚本学习之: 命令处理
输出 默认是命令行输出 > 替换输出 >> append输出 2> 错误输出 < 由文件输入 <<eof 控制台输入,eof为输入结束标志 /dev/null 垃圾桶 例:查找/home目录下的文件,将正确和错误输出都写入到log文件 find /home -name test >log 2>&1 逻辑组合 && 前面命令执行成功 || 命令执行失败 ; 连续执行 二次处理 | 管道命令 二次处理命令: cut -d '分
linux脚本实现scp命令自动输入密码和yes/no等确认信息
实现方式: 通过expect工具实现 #!/bin/bash yum -y install expect expect -c " spawn scp -r root@192.168.10.106:/root/qumf/Agoly.txt /root/qumf/ expect { \"*assword\" { ; send \"Hhly2017\r\"; } \"yes/no\" { send \"yes\r\"; e
Windows环境下写Linux sh脚本的一次挖坑和填坑
最近在研究Docker集群和安装的时候,需要准备若干台机器.所以我为节约时间,打算批量复制VM机器,然后用sh脚本命令执行机器名称和IP等基础配置信息的修改. 具体操作:我在windows环境下,用Notepad++编辑如下脚本,并且保存编码格式为UTF-8无编码BOM. 但是测试发现,linux会自动将命令行尾部的\r写到执行命令里面. 一.失败过程,如下 >> sh -x /opt/command/batch_modify_servername_all.sh 然后,我们试着找刚才创建的if
shell 脚本里的$(( ))、$( )、``与${ }的区别
shell 脚本里的命令执行 1. 在bash中,$( )与` `(反引号)都是用来作命令替换的. 命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行. $( )与`` 在操作上,这两者都是达到相应的效果,但是建议使用$( ),理由如下: ``很容易与''搞混乱,尤其对初学者来说,而$( )比较直观.最后,$( )的弊端是,并不是所有的类unix系统都支持这种方式,但反引号是肯定支持的. 关于命令嵌套: $(ps -ef|grep `
Linux sh、source和.命令执行.sh文件的区别
sh文件介绍 .sh为Linux的脚本文件,我们可以通过.sh执行一些命令,可以理解为windows的.bat批处理文件. 点命令 .命令和source是同一个命令,可以理解为source的缩写,简称点命令. sh.source和.命令执行.sh文件的区别 假如有一个文件test.sh,脚本内容如下 #!/bin/bash echo "step 1 sleeping" sleep 200 echo "step 2 sleeping" sleep 200 那么,现在按
linux - 怎么自动填写有交互的shell脚本 - SegmentFault
linux - 怎么自动填写有交互的shell脚本 - SegmentFault TCL/Expect交互式自动化测试概要 - - ITeye技术网站 expect是一种基于TCL,能与交互式程序进行"可程序化"会话的脚本语言,是一种可以提供"分支和嵌套结构"来引导程序流程的解释型脚本语言. expect由一系列expect-send对组成:expect等待输出中输出特定的字符,然后发送特定的响应. 安装expect:sudo apt-get install exp
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件.目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课 Shebang/Sha-bang在计算机科学中, Shebang (也称为Hashbang)是一个由井号和叹号构成的字符串行(#!), 其出现在文本文件的第一行的前两个字符. 在文件中存在Shebang的情况下, 类
CentOS 升级 openSSH+ sh脚本自动运维
升级前后对比 openSSH作为linux远程连接工具,容易受到攻击,必须更新版本来解决,低版本有如下等漏洞: OpenSSH 远程代码执行漏洞(CVE-2016-10009) OpenSSH auth_password函数拒绝服务漏洞(CVE-2016-6515) OpenSSH 远程代码执行漏洞(CVE-2016-10009) 升级前漏洞扫描和openSHH版本: 升级后漏洞扫描和openSHH版本: 主机系统centos7.3.1161升级openssh到当前最新版7.7p1以后使用ro
supercool.sh文件里,有哪些恶意的命令
当你在一个bash命令行中输入"*"时,bash会扩展到当前目录的所有文件,然后将他们全部作为参数传递给程序.例如:rm *,将会删除掉当前目录的所有文件. 0x01 文件名被当做参数 大多数的命令行程序受此影响.例如ls命令,当不适用任何参数时,输出是这个样子的: [stephen@superX foo]$ ls asdf.txtfoobar-l 如果你想要知道这些文件所属的组和用户,你可以通过"-l"参数来查看: [stephen@superX foo]$ ls
shell脚本里切换用户执行命令的注意事项
功能说明:用root用户执行一个脚本,脚本里需要切换到普通用户DT去执行其他命令,其中就用到了EOF,用法如下: #!/bin/bash su - DT<<EOF cd apache-tomcat-7.0.54/bin sh startup.sh EOF 当时以为su - DT就跟在交换界面执行一样会把环境也切换过去,所以在分界符EOF里用的是相对路径,结果一运行就报错: -bash: line 8: cd: apache-tomcat-7.0.54/bin: 没有那个文件或目录 然后就做了个
windows开机自动执行bat脚本启动cmd命令窗口并执行命令,最后自动关闭cmd命令窗
先说bat脚本吧,随便在桌面建一个文本文档,在里面写脚本,内容是,先启动cmd命令窗,并执行一个命令,最后自动关闭cmd窗,如下: ---------------------------------------------------------------- @echo offstart "wumin" "C:\Windows\System32\cmd.exe" netsh wlan start hostednetwork taskkill /f /im cmd.
linux执行sh脚本文件命令
linux执行sh脚本文件命令 很多时候需要多个命令来完成一项工作,而这个工作又常常是重复的,这个时候我们自然会想到将这些命令写成sh脚本,下次执行下这个脚本一切就都搞定了,下面就是发布代码的一个脚本示例. 编写脚本 touch updateapp.sh vim updateapp.sh #切换目录 cd /home/ubuntu/mobile #更新代码 git pull origin master #重启apache服务 sudo service apache2 restart 执行脚本 管
node.js在Linux下执行shell命令、.sh脚本
首先,引入子进程模块 var process = require('child_process'); 执行shell命令 调用该模块暴露出来的方法exec process.exec('shutdown -h now',function (error, stdout, stderr) { if (error !== null) { console.log('exec error: ' + error); } });//回调函数非必须! 执行.sh脚本 很多时候需要多个命令来完成一项工作,而这个工作
Spark-Unit2-Spark交互式命令行与SparkWordCount
一.Spark交互式命令行 启动脚本:spark-shell 先启动spark:./start-all.sh 本地模式启动命令:/bin/spark-shell 集群模式启动命令:/bin/spark-shell --master spark://spark-1:7077 --total-executor-cores 2 --executor-memory 500mb //注释:spark集群模式默认使用全部的核心数,默认使用内存大小为1024Mb 1.用shell的集群模式去执行一个本地wor
两种Linux下非交互式命令的实现
一.概述 在Linux环境,有多种实现自己主动化的脚本语言.如Shell.Python.Perl.Tcl等. Shell语言因与Shell外壳结合紧密,是最常见的实现自己主动化的脚本语言. 同一时候,在Linux环境中存在大量功能单一的小工具--通常它们在指定输入后,马上就可获得输出,比如echo.cat等字符串/文本打印工具.又或者是如sed.awk等最经常使用的字符串编辑工具.通过编写Shell脚本,我们能够重复利用这些小工具来实现一些自己主动化的批处理. 在少数情况下,我们也须要用到一些交
2019-12-11:kali linux工具Msfvenom 命令自动补全
msfvenom大家都不陌生,在我们使用MSF进行权限维持,内网渗透的时候都会用到,支持的语言的种类很多.大家都知道我们在使用msfvenom 的时候需要手动输入很多参数,这些参数需要记忆,或记在其它地方,用的时候在查看使用哪个参数,哪条命令,非常的不方便.现在分享一个msfvenom命令自动不全的方法 1,安装oh-my-zsh 官网 https://ohmyz.sh/ 官网发的安装命令 sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/oh
expect入门--自动化linux交互式命令
很多linux程序比如passwd,ftp,scp,ssh等自身并没有提供一种静默式的执行选项,而是依赖于运行时的终端输入来进行后一步的操作比如更改密码.文件上传.下载等.虽然有些编程语言如java嵌入了不少这些常用工具的API比如jcsh等,但是毕竟他们不够自然和顺手.虽然也可以使用ssh免登陆方式,但当机器太多且密码可能经常会更改的时候,每次大批量修改也会很不方便. expect是unix/linux下的一个命令行工具,其使用tcl作为编程语言开发.其主要的功能就是模拟终端用户控制交互式应用
交互式命令 expect
shell尽管很强大.但是貌似无法完成交互式命令的操作,实例 ssh host 如果host而且该机没有加入信任.手动输入的时间需要password. 这样的情况下可以使用expect支持. 下面举个样例来说明expect的功能与使用: 功能:对集群各机器运行同样指令 如 集群ip 为 :192.168.6.1~192.168.6.10.须要在这10台机器上 同一时候 以tt用户登录 并运行 mkdir ttji_314命令. 首先 定义一个hostlist文件 : 192.168.6.1 19
热门专题
myeclipse2017激活失败
关于Java mvc删除和修改总结
update 字符串拼接
餐饮服务质量调查打分C语言
虚拟机怎么安装zip格式的系统
window10 phpstudy redis扩展
asn1tools 产生C代码
flexnet licensing 错误代码
国行lumia1520刷win10arm
python dic key是自定义
RK 如何移植移动网络
android中批量上传library上传只maven仓库
for mac破解网站
benchmark性能测试工具
detached screen 如何删除
armbian samba 无访问权限
公众号向小程序发送模板消息
路由守卫白名单vue
linux如何修改程序时间和硬件时间
oracle默认用户名密码