注意,如果创建.sh文件后不可以执行,请执行sudo chmod 755 文件名.sh
来修改权限。
使用 echo “密码” | (管道符)
使用场景: sudo 命令
在使用普通用户执行 root 命令时有时候会需要输入密码,并且在输入密码后一段时间不需要再次输入(但是不影响),这时候可以使用
echo "密码" | sudo 命令
比如我需要一键清空服务器,则可以创建一个clear.sh
文件(假使我的密码是 123456):
echo "123456" | sudo rm -rf /*
那么在执行的时候,我只需要./clear.sh
就可以清空我的整个数据库。
重定向
用重定向方法实现交互的前提是指令需要有参数来指定密码输入方式,如ftp就有-i参数来指定使用标准输入来输入密码
shell用重定向作为标准输入的用法是:cmd<<delimiter ,shell 会将分界符delimiter之后直到下一个同样的分界符之前的内容作为输入
使用场景:不仅仅输入一个密码,还需要输入用户名。
ftp -i -n 192.168.21.46 <<EOF
user 用户名 密码
EOF
expect
echo + 管道符不是什么时候都可以生效(比如我写的自动提交博客脚本最后需要输入我的服务器的 git 仓库密码就不生效),因此我们可以使用 expect 方法来执行。
set timeout 30
spawn ssh -l 用户名 10.125.25.189
expect "password:"
send "要输入的密码"
interact
这里的语句是这样的:
- 设置超时时间为30s
- spawn 是 expect 的起始语句,可以理解为从此处开始
- spawn 后面的语句是执行 ssh 连接
- expect:当发现
password:
这个字符串后,在后方输入send后面的内容- send:要输入的密码
- interact:执行完留在远程控制台,不加这句执行完后返回本地控制台
这个例子是我真实的脚本文件(但是磨掉了密码),平时用于往我的服务器中提交 hexo 博客
cd /Users/jim/hexo
echo '123456' | sudo -S hexo clean
sudo hexo g
spawn sudo -S hexo d
expect "password:"
send "123456"
首先进入到hexo文件夹下
因为要用到sudo 来 clean/generate/deploy我的博客,所以我这里使用一个 echo+管道符,输入一次 sudo 命令(短时间内不需要再重复输入,所以我只写了一个)
generate 一下 hexo 文件
提交到远程仓库,这里需要输入远程仓库的密码,所以我用
spawn
标记这句话当
expect
(发现)到"password:"后执行send
将我的密码
send
(发送到)到控制台
使用HttpClient4.5 post提交multipart/form-data数据实现多文件上传场景:前端提交multipart/form-data数据,由api服务A将请求转发到api服务B。maven依赖&lt;dependency&gt; &lt;groupId&gt;commons-httpclient&lt;/groupId&gt; &lt;art...
面对珍珠(Perl)夺目之光、灵蛇(Python)更具有上天入地之能。它可以在 MS-DOS,Amiga,BeOS, OS/2,VMS,QNX等多种OS上运行;比 Perl 和 VB更快更好,比 C 和 C++ 语言更具扩充性;不仅在“星球大战”、 “星球之旅(Star Trek)”等超级大片中当纲特技和动画制作,还闯入了美国航天航空局控制室。真相如何,请看报道。对 Perl (珍珠) 语言,互联...
目录一:日志的概念二:为什么需要日志?必要性,没有它,我们会怎样?意义,有了它,我们可以用来做什么?三:我们需要什么样的日志?何时记录?何处记录?日志的分类:级别、内容四、如何更好地利用这些日志?五、如何平衡日志记录和程序的性能?六、如何封装一个好用的日志组件/服务?参考实现一:日志的概念对程序操作的记录二:为什么需要日志?必要性,没有它,我们会怎样?1.无法准确定位问题2.无法快速解...
本文介绍图片选择框架Matisse的使用,实现图片的选择及使用相机进行拍摄,最后将选择或拍摄的照片显示在activity中。这里仅做使用介绍,不做深入研究。主要涉及处理安卓6.0权限的动态获取,这里使用rxpermissions本文目录1、github地址2、项目结构3、使用效果4、使用准备1)项目依赖2)AndroidManifest.xml文件3)filepaths.xml文件4)添加Glid...
1. tf2简介2. 张量tensor(eager tensor)2.1 张量简介2.2 创建张量(tensor)2.2.1 tf.constant2.2.2 constant_initializer:指定shape和value的类2.2.3 tf.eye:单位矩阵或指定的1矩阵2.2.4 tf.fill:指定shape和value2.2.5 one_hot2.2.6 tf.ones:指定shape,value为12.2.7 ones_initializer....
本教程指导用户体验通过workbench远程登录ECS,完成搭建Docker环境的快速搭建,并使用Docker部署一个Nginx服务。点击立即参与云产品场景体验https://developer.aliyun.com/adc/scenario/9fd79b8711984e309f20d82bc65a26fa?spm=a2c6h.13858375.0.0.54425b90rwAF3m建议体验时长:1小时云产品资源使用时长:1小时实验简介体验后您将收获到安装和使用Docker 使用
1 错误描述[email protected]:~$ cd /opt/[email protected]:/opt/apache-tomcat-7.0.57$ bin/startup.shUsing CATALINA_BASE: /opt/apache-tomcat-7.0.57Using CATALINA_HOME: /o
一.DDoS 攻击究竟是什么?DDoS 攻击,全称是 Distributed Denial of Service,翻译成中文就是分布式拒绝服务。一般来说是指攻击者利用“肉鸡”对目标网站在较短的时间内发起大量请求,大规模消耗目标网站的主机资源,让它无法正常服务。在线游戏、互联网金融等领域是 DDoS 攻击的高发行业。例如:我开了一家有五十个座位的重庆火锅店,由于用料上等,童叟无欺。平时...
小程序登录<button :loading="loading" class="delButtonStyle confirm" open-type="getUserInfo" @getuserinfo="getuserinfo" withCredentials="true" lang="zh_CN">微信登录</button>// 小程序登录getuserinfo() { this.loading = true let that = this // 获取
代码如下 :1.mapper.xml 文件<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper name...
今天来分享一下关于Python图片膨胀和腐蚀、图片人脸识别以及动态人脸识别的代码~~~开心呢,本菜鸟当时可是沉浸在cv2库中久久不能自拔了好久的呢~~希望你也能享受Python带来的小惊喜哟。。0x 00 Python图片膨胀与腐蚀图像的膨胀和腐蚀主要是寻找图像中的极大和极小区域。代码中的结构元素是指:设有两幅图象B,X。若X是被处理的对象,而B是用来处理X的,则称B为结构元素(structure element),又被形象地称做刷子。结构元素通常都是一些比较小的图象。详细的一些原理概念见文末链
这里介绍三个小题,主要都是结构体里面的排序。第一题:无题 HDU - 1871,链接https://vjudge.net/problem/HDU-1871构造房间结构体,按照价格排序。#include#includeusing namespace std;struct Room{ int id,cnt,price; bool operator < (con