ICode9

精准搜索请尝试: 精确搜索
  • 命令行重定向无法实时输出2022-04-26 12:31:06

    场景 在命令行将结果重定向到文件中 python3 main.py > main.log main.log直到脚本运行结束, 才会写入结果. 对于一些比较耗时的操作, 系统实时获取脚本进度, 就需要实时将脚本的输出写入到文件中. 解决 使用unbuffer 命令, 可以实时刷新输出缓冲区. unbuffer python3 main.py >

  • Kotlin 函数的默认参数没有出现在签名中 runBlocking 默认参数在源代码中未定义?默认参数的小坑2022-04-19 00:35:33

    问题起因 runBlocking的context参数有默认值。但是在Android Studio中查看源代码,发现源代码中定义如下: @Throws(InterruptedException::class) public actual fun <T> runBlocking(context: CoroutineContext, block: suspend CoroutineScope.() -> T): T 这就很奇怪了。因为

  • Linux之expect、tcl2022-03-27 19:02:14

    expect是一个自动化交互软件,可用于linux终端自动交互(模拟人与终端的交互)。它是基于tcl(一种语言l实现的软件,命令行安装命令为sudo apt install expect(apt是abuntu中一个自带的安装包管理器)   推荐在常用的shell解释器下运行expect命令(expect <<EOF  xxxxxxxxxxxxxxxxxx 

  • 自动化测试之jest的使用2022-03-20 16:05:46

    概念 jest是Facebook出品的一个JavaScript开源测试框架。内置了零配置、自带断言、测试覆盖率工具等,实现了开箱即用。 jest的主要特点 零配置自带断言快照测试功能,可以对常见前端框架进行自动化测试jest测试用例是并行执行的,而且只执行发生改变的文件所对应的测试,提升了速

  • 自动化测试的使用示例2022-03-10 14:05:05

    单元测试 对方法进行 wrap 'should call method once with argument': function () { var object = { method: function () {} }; var spy = sinon.spy(object, 'method'); object.method(1); assert(spy.withArgs(1).calledOnce); } 测试 effects import

  • ssh export 无交互登录 mac iterm2 配置主机自动登录2022-03-01 19:33:49

    rui.qin.o@MBC02XT0K4JGH7 bin % cat login.exp  #!/usr/bin/expect   set timeout 30 spawn ssh -p [lindex $argv 2] [lindex $argv 0]@[lindex $argv 1] expect {     "(yes/no)?"     {send "yes\n";exp_continue}     "password:"     {s

  • Linux expect 自动登录,自动执行任务2022-02-24 16:02:30

    1、创建一个test.sh,写入: /usr/bin/expect << EOF set timeout 10 spawn sudo -sexpect "*密码*"send "password\r"expect "#*"# send "systemctl status AuthorizeServer\r"expect {"*active (running)*" {}""

  • MacOS 使用expect 设置用户密码2022-02-20 12:03:49

    企业在分发MacBook时,IT管理员会将MacOS的登录密码设置为空,为了方便用户使用,但是因为MacOS当前的用户密码是空(blank),在使用脚本做维护时,因为sudo在用户空密码为空的时候,是无法使用sudo来提升权限的,导致脚本运行失败,如果人为去终端上,一个一个修改,必定会花费大量人工时间,为解决这样

  • expect 交互时 管道符的问题2022-02-09 10:02:05

    今天同事说expect交互出了问题,无法调用gzip解压导入数据库,但是手动执行却没问题 先来看看问题 #!/usr/bin/expect set timeout 10000 spawn zcat db_xd_20220208_133003.sql.gz | mysql -u xd -p xd expect -re ".*password" send "xxxx\n" expect eof exit 执行后输出 spawn

  • shell实现交互式输入变自动化输入,就是可编程2022-02-08 15:34:39

    可以使用expect脚本 1,在shell脚本中调用expect脚本。   2,或者使用重定向(所谓重定向就是把标准输入重定向到标准输入)比如 sh run_hmj_with_java_pid.sh 源码为: #!/bin/bash echo "input array element split by space"read -a control echo "1:"echo ${control[0]}   执行: [root

  • 单元测试 敏捷开发2022-01-25 23:04:02

    单元测试->敏捷开发 核心内容: 测试框架 1、Jest-开箱即用,简单轻松 2、Mocha-需要自行配置 断言库 expect(f1(1,2))to.Equals(3) 1、Chai-支持所有风格-全面 2、Assert-node环境直接使用 Mock库 屏蔽依赖 Test runner 模拟一个浏览器环境 karam 覆盖率工具 istanbul

  • rsync 本地路径到挂盘路径 ;挂盘路径到本地2022-01-25 15:36:08

    要解决的是每次都要输入密码,所以不能后台投递任务。 解决方案: 核心是expect      spawn #!/usr/bin/expect -f set timeout 10 set username [lindex $argv 0] set password [lindex $argv 1] set host [lindex $argv 2] set src_file [lindex $argv 3] set dest_file [lin

  • 如何优化selenium webdriver的执行速度2022-01-24 11:33:26

    让自动化测试脚本正常工作只是自动化测试的第一步,由于自动化脚本会经常执行并更新,因此测试脚本需要 可以快速执行 容易维护 容易阅读 本文会提供一些让selenium自动化脚本运行的更快的技巧。 在page_source中断言text比直接使用text属性断言要快 我们经常会需要断言页面中的某个

  • C++ 从&到&&2022-01-21 10:33:47

    人类发展史,就是不断挖坑、填坑的过程。 语言发展史也是如此! 任何一门设计合理的语言,给你的限制或提供的什么特性,都不是没有代价的。 C的指针 指针:pointer 指针的思想起源于汇编。指针思想是编程思想历史上的重大飞跃。 每一个编程语言都使用指针。C语言将指针完全暴露给了用

  • C++ 从&到&&2022-01-17 15:02:20

    人类发展史,就是不断挖坑、填坑的过程。 语言发展史也是如此! 任何一门设计合理的语言,给你的限制或提供的什么特性,都不是没有代价的。 C的指针 指针:pointer 指针的思想起源于汇编。指针思想是编程思想历史上的重大飞跃。 每一个编程语言都使用指针。C语言将指针完全暴露给了用户。潘

  • HttpClient之可恨的Expect(C# http 请求卡住的解决办法)2022-01-07 16:02:15

    HttpClient之可恨的Expect(C# http 请求卡住的解决办法) 今天用HTTP.HttpClient这个对象开发的时候遇到一个奇怪的问题 当POST一个页面的时候始终卡住提交不成功 最初以为协议有错误就抓包测试在抓包在测试 最后想到是不是HttpClient的BUG?当使用另一种语言提交同样的包就没问题

  • 使用expect进行linux服务器批量首次登录2022-01-06 10:35:18

    #!/bin/bashuser='root'password='123456'cat ./ips.txt | while read LINEdoecho $LINE;/usr/bin/expect << EOFset timeout 5spawn ssh $user@$LINE -p 22expect {yes/no { send "yes\r"; exp_continue }*password* { send "$pas

  • 搭建CDH批量执行的脚本2022-01-01 13:31:23

    0.前言 在搭建cdh的过程中,需要执行大量相同的命令到不同的机器,因此编写批量脚本。 0.1 注意点 node.list内为所有节点IP 需要下载expect 根据实际情况修改脚本中的密码 1.批量执行命令的脚本如下: 1.1 batch_cmd.sh #!/bin/sh list_file=$1 cmd=$2 username=root password=pa

  • 如何优化selenium webdriver的执行速度2021-12-21 14:33:07

    让自动化测试脚本正常工作只是自动化测试的第一步,由于自动化脚本会经常执行并更新,因此测试脚本需要 可以快速执行容易维护容易阅读 本文会提供一些让selenium自动化脚本运行的更快的技巧。 在page_source中断言text比直接使用text属性断言要快 我们经常会需要断言页面中的某个

  • shell脚本 添加其他机器免密2021-12-15 10:33:23

    #!/bin/bash #批量免密登陆(生产环境) SERVERS="`cat /root/ip_list`"   function sshcopyid {     expect -c "         set timeout -1;         spawn ssh-copy-id admin@$1;         expect {             \"(yes/no)?\" { send \"yes\r\"

  • python两个字符串有变化值作对比2021-11-29 14:32:23

    1 def replace_star(actual, expect): 2 count = 0 3 for expect_char in expect: 4 count += 1 5 if expect_char == '*': # 遍历预期字符串,找到*位置 6 actual = actual[:count - 1] + "*" + actual[count:] # 把实际字符

  • ssh自动登录实现方法2021-11-28 02:01:10

    问题:由于ssh协议不支持从标准输入获取变量,所以在shell脚本中无法实现自动化交互。 解决办法一:使用sshpass,需要在有网的的情况下安装sshpass,这种方法简单易操作。       首先安装sshpass:yum -y install sshpass       然后自动化脚本中直接使用:sshpass -p "密码" ssh r

  • Postman_Test代码片段整理2021-11-19 16:02:17

    1.Status Code :Code is 200 pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); 2.Response Body:Contains String pm.test("Body matches string", function () { pm.expect(pm.response.text()).to.include(

  • Linux交互工具expect2021-11-18 18:34:16

    应用场景:一个终端shell脚本实现多台主机自动部署。无需人为干预。 expect是一个自动交互功能的工具。可以在主机切换时【即需要交互操作时】,利用expect,则可以根据程序的提示,模拟标准输入提供给程序,从而实现自动化交互执行。 实例: PASSWD=xxx for host in $@doCMD="ssh $host"expec

  • expect2021-11-15 12:00:07

    当我们需要通过命令行登录多个设备时,通常我们会选择 ssh秘钥或ansiable 登录expect实现了类似的功能。其主要实现命令的自动应答 exp_continue 保持终端不断开 #!/bin/bash #Usage:To get message of H3C's Version #create at 20190826 rm -f version.txt err.txt exec &>./vers

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有