最近工作中需要使用ssh连接到centos服务器中,以前公司都是直接配的私钥就可以免密登录了.这里还用的密码. 由于,我一直用的是iTerm2,所以在网上搜索了下,找到了一种方案,那就是expect脚本.看了下,系统还自带了,不用再安装了 expect是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预.说白了,expect就是一套用来实现自动交互功能的软件. 我把主要的脚本贴一下 #!/usr/bin/expect set timeout 30 spawn ssh -p [linde…
首先创建一个expect脚本ssh_expect,文件内容如下: #!/usr/bin/expect -f set hostname [lindex $argv 0] set user [lindex $argv 1] set passwd [lindex $argv 2] set timeout 30 set force_conservative 1 if {$force_conservative} { set send_slow {128 .1} } spawn ssh $user@$hos…
背景:开机黑屏卡在,dev/sda1: clean, 552599/6111232 files, 7119295/24414464 blocks,修复完这个问题之后,出现桌面卡死,光标鼠标键盘全部失灵,跟着本文来解救你的电脑 1. 开机黑屏卡在,dev/sda1: clean, 552599/6111232 files, 7119295/24414464 blocks 解决办法:https://askubuntu.com/questions/882385/dev-sda1-clean-this-…
正确返回0 1大返回正数 2大返回负数  1,2表示输入字符串1和字符串2 根据ASCII码大小来判断 代码: #include<stdio.h> #include<string.h> int main() { //字符串比较函数 根据ASCII码值的大小来比较 strcmp //相等 返回0 1大返回正数 2大返回负数 1和2为要比较的两个字符串 ] = { "mrsoft" }; //设置用户名字符串 ] = { "mayue" }; /…
背景:在远程文件下载时,需要输入对方的服务器密码,shell不支持交互输入内容,可以用下面两种方式实现   一.在shell脚本中嵌入expect来实现密码输入 expect是一个自动交互功能的工具.expect是开了一个子进程,通过spawn来执行shell脚本,监测到脚本的返回结果,通过expect判断要进行的交互输入内容(send) 1.安装expect  需要先安装tcl:apt-get install tcl apt-get install expect   2.expect使用 2.…
 背景:在远程文件下载时,需要输入对方的服务器密码,shell不支持交互输入内容,可以用下面两种方式实现   一.在shell脚本中嵌入expect来实现密码输入 expect是一个自动交互功能的工具.expect是开了一个子进程,通过spawn来执行shell脚本,监测到脚本的返回结果,通过expect判断要进行的交互输入内容(send) 1.安装expect  需要先安装tcl:apt-get install tcl apt-get install expect (输入expect查看是否能…
expect是用来实现自动交互功能的工具之一,使用expect-send来实现交互过程. 注意: 1.脚本的执行方法与bash shell不一样,比如:expect example.sh 2.向一个脚本传递参数时,bash shell是使用$1,$2...来接收参数的:而expect则将脚本的执行参数保存在数组$argv中,在脚本中一般将其赋值给变量:set 变量名 [lindex $argv 参数] ? 1 2 3 4 5 6 7 8 9 10 11 12 #!/usr/bin/expect…
Linux 下 expect 脚本语言中交互处理常用命令 1. #!/usr/bin/expect 告诉操作系统脚本里的代码使用那一个 shell 来执行.这里的 expect 其实和 Linux 下的 bash.windows 下的 cmd 是一类东西. 注意:这一行需要在脚本的第一行,从而告知操作系统采用 expect 作为 shell 执行脚本. 注意:当使用 #!/usr/bin/expect -d 时,expect 脚本将运行在调试模式,届时脚本执行的全过程将被展示出来. 2. set…
保存: 在mac中自动保存git的用户名和密码很简单,只需要在终端命令行中输入下面的命令就是: git config --global credential.helper osxkeychain 然后在git 操作中 只要输入一次账号名和密码 ,在之后的操作中 就不需要再次输入了 删除: 解决方案:用钥匙串去更改用户名和密码 第一步:找到你的钥匙串的位置 应用程序----实用工具-----双击钥匙串----右上角搜索git------双击登陆-----点击显示密码-----输入两次你的开机密码-…
问题描述: mac笔记本本身会自带几个python版本,比如python2.7版本,我没有改动mac默认的python版本,只是安装了python3.7版本. 使用Pycharm开发Python项目没有遇到什么问题.但是在java项目中调用py脚本的话,就有问题了.我的项目需要将Pycharm开发好的py脚本(多个.py文件),拷贝到java项目中,在java项目(是用IDEA开发工具)中,如果直接是用鼠标右键运行py脚本的话是没有问题的,将py脚本依赖的第三方库直接拷贝到py脚本所在地目录下然…
一.expect脚本中,变量的不同写法 shell脚本中定义时间变量的写法:time=`date "+%Y%m%d"` ==>>直接照搬到expect中,设置的变量是不生效的:set time `date "+%Y%m%d"`这样的写法是错误的,无法识别. ==>>应该这样写:set time [exec date +%Y%m%d]才是正确的写法. 二.shell脚本和expect脚本的结合 将expect加入到shell脚本后 set 定义…
放弃吧 我找了六个小时都没找到可以用的方案(指标题括号里的内容) 给个曲线救国的方法: 现把expect脚本写成一个文件 在另一个shell脚本中调用…
刚刚用iTerm2的时候,总是要一遍遍的敲用户名.密码. 我在想, 能不能像Windows的软件一样,可以直接让软件记住.然后只要点击一下,就直接ssh到远程服务器上面去了. 之后经过搜索,可以用expect脚本实现. <code style="font-family: Monaco, Menlo, 'Courier New', monospace; margin: 2px; word-break: break-all; line-height: 18px; display: block;…
一.说明 mac电脑自带终端神奇iterm2,日常登录服务器操作一般场景为ssh user@ip,确认后再输入密码操作. 该操作较为麻烦且需通过hostname判断所在主机. 通过ssh生成秘钥方式较为麻烦,先推荐使用iterms自带功能进行服务器登录. 二.使用 1.建立记住密码功能 1.1 本地任选一路经,使用except记住服务器/账号/密码信息:修改一下脚本的服务器IP.账号和密码即可 # zero @ zerodeMacBook-Pro in ~/work/hosts [18:53:1…
互联网服务有很多台服务,但是在上线的时候需要将这些服务版本都更新与个个都重启,下面的脚本语言,就是一键发布服务~ 1.在/home/weihu/deploy/ 目录下建下publish .publish下建下bak.bin.cfg.rel文件夹(其中bak为备份.bin为自己写的脚本语言目录.cfg为生产环境的配置文件.rel每次版本发布) 2.安装expect脚本 查看是否已经安装 whereis expect 3.工程版本中,生产配置文件往往是很少变的,但是自己打的版本可能是在开发环境可能和…
像写网页一样做客户端界面可能是很多客户端开发的理想. 做好一个可以实现和用户交互的动态网页应该包含两个部分:使用html做网页的布局,使用脚本如vbscript,javascript做用户交互的逻辑.当需求变化时,只需要在服务端把相关代码调整一下,用户即可看到新的内容(界面). 传统的客户端程序开发流程和网页开发可能完全不同. 首先是界面的布局,在老式的界面布局过程中,程序员先在界面上放好各种控件,然后需要自己通过相应的代码来维护界面在不同状态下控件的显示状态及位置.当界面中元素很多时,单纯布局…
Mac中安装maven3.2.1 原文链接:http://blog.csdn.net/f_zongjian/article/details/24144803 本机OS X:10.9,未安装XCode, /usr/share/java目录下只有Stubs目录. 下载maven:http://maven.apache.org/ 下载了lastest version,文件名:apache-maven-3.2.1-bin.tar.gz 给.tar.gz压缩包解压: tar -xvf ~/Download…
解压下载到的.gz源码:gunzip xxx.tar.gztar xvf xxx.tar, 其实在Mac中可以直接双击解压的.然后定位到解压后的目录下:./configuremakesudo make install这样Qt就会被安装到/usr/local/Trolltech/qt-4.4.0 了这样, 就可以用qmake了./usr/local/Trolltech/Qt-4.4.0/bin/qmake -project/usr/local/Trolltech/Qt-4.4.0/bin/qmak…
Mac中主要有四个修饰键,分别是Command,Control,Option和Shift,这四个键分别有自己的图案 基本快捷键 Command是Mac里最重要的修饰键,在大多数情况下相当于Windows下的Ctrl Command-Z 撤销 Command-X 剪切 Command-C 拷贝(Copy) Command-V 粘贴 Command-A 全选(All) Command-S 保存(Save) Command-F 查找(Find) Command-Shift-3 截取全部屏幕到文件 Co…
删除Mac中所有 .DS_Store 隐藏文件 35•36509感谢 longago 分享于 2012-07-06 12:01|只看该作者|倒序浏览|打印 Safari 5.1.7 Mac OS X 10.7.4 <ignore_js_op> Mac OS X系统下,几乎绝大部分文件夹中都包含 .DS_Store 隐藏文件,这里保存着针对这个目录的特殊信息和设置配置,例如查看方式,图标大小以及这个目录的一些附属元数据. 在Mac下这些 .DS_Store 文件默认是隐藏的,我们看不见.不过当将…
Delphi中使用python脚本读取Excel数据2007-10-18 17:28:22标签:Delphi Excel python原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://seewind.blog.51cto.com/249547/46669前段时间,在正式项目中使用Python来读取Excel表格的数据.具体需求是,项目数据库中有些数据需要根据Excel表格里面的数据进行一些调整,功能应该比较简单.为了学习Pyth…
Mac中如何写NTFS的移动硬盘 按 照网上的说法,简单的就是购买Paragon NTFS或者Tuxera NTFS之类的收费软件,不想花钱的就用NTFS-3G.作为一个开发人员,既然能够自己解决,当然没有必要花钱买软件了.于是乎在我的OS X 10.9.2上,按照网上的说明安装了NTFS-3G,可惜依然无法使用.google了一下,其实直接使用Mac自带的mount_ntfs就可以轻松 搞定,记录一下,方便以后查询. 1,接上NTFS硬盘后,打开终端,输入diskutil info /Volu…
问题: 1.mac中下载sourcetree配置仓库地址,一直在提示输入密码,无法登录成功,更无法获取源码. 2.找不到配置仓库时的账号密码,只看到地址. 场景: git服务器:自己的GIT服务器,非github. 登录方式:证书登录. 解决方案: *首先,sourcetree无法使用设置密码账号的方式实现登录请求.也无法像windows环境下的sourcetree一样配置key文件的地址.所以我们实现的方式是在mac上配置一个秘钥,而sourcetree登录时候正式使用这个秘钥文件. 1.打开…
Loadrunner11中webservice协议脚本总结 简介     webservices协议是建立可交互操作的分布式应用程序的新平台,它通过一系列的标准和协议来保证程序之间的动态连接,其中最基本的协议包括soap,wsdl,uddi     1)SOAP(simple object access protocl)         SOAP是消息传递协议,它规定了web services之间如何传递消息.SOAP基于xml和xsd,xml是soap的数据编码方式,简单说soap规定了:  …
aria2是一个十分牛逼的下载神器,有时候项目需要一个很牛逼的下载中间件的话,aria2是一个不错的选择.其中支持jsonrpc和websocket的特性尤其诱人.但是python用起来还是有点不爽,所以简单封装一下aria2的jsonrpc. 所以,用python简单的封装了aria2的jsonrpc中adduri的脚本. 使用起来非常简单,仅需要三行代码. from pyaria2 import Jsonrpc jsonrpc = Jsonrpc('localhost', 6800) res…
0x00 概述 对于开发来说,Windows 和 macOS 是更为常见和常用的系统,所以也很有必要了解在 Windows 和 macOS 中使用 Docker 的方法.很幸运的是,Docker 的官方对这两个系统提供了强有力的支持,我们可以很轻松的在这两个系统中运行 Docker.在这一小节中,我们就来了解一下 Docker 在 Windows 和 macOS 中安装的方式以及运行的原理. 0x01 Docker Desktop 在大多数情况下,我们的开发工作是在 Windows 或 macO…
在实际工作过程中,可以使用lua脚本来解决一些需要保证原子性的问题,而且lua脚本可以缓存在redis服务器上,势必会增加性能. 不过lua也会有很多限制,在使用的时候要注意. 在Redis中执行Lua脚本有两种方法:eval和evalsha eval EVAL script numkeys key [key ...] arg [arg ...] 其中: <1> script:你的lua脚本 <2> numkeys:  key的个数 <3> key:redis中各种数据…
需求目标 iPod 中有很多音乐是从原来的电脑中同步进去的,新的电脑中没有 iTunes 的音乐库.所有的音乐都在 iPod 中,会不会突然有一天坏掉了,还是备份到电脑中比较安心啊.那么如何把音乐从 iPod 中再拷贝到新电脑中呢? 需要准备的材料 你的iPod 你的Mac 一根数据线 避免 iTunes 自动同步 如果你之前选的是自动同步,那么在将 iPod 连接到 Mac 之前,一定要小心,否则会自动将 iPod 中的内容删除,因为 Mac 上并没有 iPod 中的文件. 查看 iPod 的…
分类:Unity.C#.VS2015 创建日期:2016-04-16 一.简介 这一节先利用GUI显示一个简单的界面(以后还会专门介绍GUI),并解释如何在VS2015中调试C#脚本. 本节例子的运行效果如下: 二.调试C#脚本的方式 有以下方式: (1)利用断点调试.断点设置和取消的办法与在控制台应用程序中利用断点调试C#代码的办法相同. (2)通过Debug类提供的方法在后台输出调试信息.该办法会直接在VS2015输出窗口以及Unity的控制台(Console)中输出调试信息. (3)在Un…
Shell 脚本编程 是你在 Linux 下学习或练习编程的最简单的方式.尤其对 系统管理员要处理着自动化任务,且要开发新的简单的实用程序或工具等(这里只是仅举几例)更是必备技能. 本文中,我们将分享 10 个写出高效可靠的 bash 脚本的实用技巧,它们包括: 1. 脚本中多写注释 这是不仅可应用于 shell 脚本程序中,也可用在其他所有类型的编程中的一种推荐做法.在脚本中作注释能帮你或别人翻阅你的脚本时了解脚本的不同部分所做的工作. 对于刚入门的人来说,注释用 # 号来定义. # TecM…