之所以有这一篇文章,是因为之前我写过的一篇文章:“解决Mac上打开txt文件乱码问题”:传送门: https://www.cnblogs.com/chester-cs/p/11784079.html 当时我们已经了解到乱码的问题是来源于文本在windows上和macos上的编码不同.前者是GB18030,后者是UTF-8.并且我们也解决了问题:使用命令行程序iconv.可是我每次想要进行文本转换的时候特别的麻烦:首先打开我的博客找到那篇文章(因为我记不住语法),然后在命令行里面键入命令,稍作修改…
一个简单的shell脚本 一个简单的shell脚本 编写 假设我想知道目前系统上有多少人登录,使用who命令可以告诉你现在系统有谁登录: 1.[KANO@kelvin ~]$ who2.KANO tty1 2016-02-15 01:47 (:0)3.KANO pts/0 2016-02-15 01:48 (kelvin) 当然在个人电脑上,所列出来的列表可能只有上面这么短.但是在一些大型.多用户的系统上,所列出的列表就可能很长.这个时候我们可以使用自动计算用户总数.wc是一个字数计算程序,它可…
在了解了linux终端和其搭配的基本Shell(默认为bash)的基础下,我们就可以在终端中用vi/vim编辑器编写一个shell的脚本程序了 Shell既为一种命令解释解释工具,又是一种脚本编程语言,用各种shell下的命令和一些特定的语法结构就可以组成一个Shell脚本程序,shell脚本程序是一个纯文本文件,但在执行之前不需要任何操作.我们可以通过写一些脚本来让我们更方便的对文件进行操作,以及做一些shell的测试. 1:打开终端,进入保存程序的目录,命令行输入 vi test.sh(Sh…
一.需求 1.test.sh 脚本执行时候需要添加参数才能执行 参数和功能详情如下: 参数 执行效果 start 启动中... stop 关闭中... restart 重启中... * 脚本帮助信息... 2.参数的数量有限制,只能是1个,多余一个会提示脚本的帮助信息 3.帮助信息使用函数来实现 信息内容:脚本 test.sh 使用方式: test.sh [ start|stop|restart ] 二.知识点分析 1.test.sh 脚本执行时候需要添加参数才能执行 脚本传参.case语句 2…
shell 脚本文件Windows传到Linux后编码问题 下面这个标红的位置出现,是由于脚本从Windows机器上直接传到linux文件格式不对导致的. cat -v a.sh help^M exit^M }^M [ $# -ne ${parasnum} ] && help_msg^M ^M export HOST_IP=$1^M export HOST_PORT=$2^M   需要使用dos2unix命令处理脚本. 解决方法:dos2unix aa.sh  即可.…
不看笔记,长时间不用自己都忘了,还是得经常看看笔记啊. 一个简单的shell程序 shell结构 1.#!指定执行脚本的shell 2.#注释行 3.命令和控制结构 创建shell程序的步骤 第一步:创建一个包含命令和控制结构的文件 第二步:修改这个文件的权限使它可以执行. 使用chmod u+x 第三步:执行shell sh /test/example.sh   Shell变量 变量:是shell传递数据的一种方法,用来代表每个取值的符号名 shell有两类变量:临时变量和永久变量 临时变量是…
.Net Core 跨平台:一个简单程序的多平台(windows.Linux.osx)发布 .Net Core 3.0 已于2019年9月23日发布了,包含了一些新特性,具体参见Announcing .NET Core 3.0 .NET Core是一个跨平台,高性能,开放源代码框架,用于构建现代的,基于云的,Internet连接的应用程序框架,其具有一下优点和特点: 跨平台:.NET Framework应用程序仅在Windows平台上运行,而.NET Core应用程序可以在Windows平台上开…
如何写一个简单的shell 看完<UNIX环境高级编程>后我就一直想写一个简单的shell来作为练习,因为有事断断续续的写了好几个月,如今写了差不多来总结一下. 源代码放在了Github: https://github.com/Broglie/Oh-Shell 简单的分析 我们的shell不像bash那样复杂全面,只是实现其中的一小部分功能:命令历史,命令补全,支持IO重定向和管道.一共分成几个部分:主 函数文件,输出出错信息,解析命令等. 我们打开bash对照着做,首先bash有命令提示符,…
这是一个简单的appium脚本,测试amazon购物过程的,过程包括搜索商品,然后从结果列表中选取中意的商品,然后加入购物车,等等. 它是一个最原始的脚本,对测试元素.数据.报告等未作任何的封装,后面计划把它合并到现有的webdriver的web测试框架里去. 运行中终于到的问题: 1.genymotion模拟器上执行有点延迟,脚本命令发出后大概3秒模拟器上才有反应: 2.在输入搜索条件后,执行回车命令,执行的效果是退格键(backspace),百撕不得骑姐啊: 3.再就是非原生对象的识别了,比…
需求说明 最近在AIX上做开发,开发机器在office网段,测试机器在lab网段,不能互相通讯,只能通过特定的ftp来传文件. 每次上传的机器都要做:登录ftp,进入我的目录,上传:下载的机器都要做:登录ftp,进入我的目录,下载.以上动作每天都要做几十次,很蛋疼. 这个shell脚本的功能就是完成这些功能:登录ftp,进入我的目录,上传/下载某些文件.要传入一个参数,这个参数如果是“get”,那就从ftp下载:如果是“put”,那就上传到ftp. 因为从来没有用过shell脚本,所以将一些关键…
一个简单的ETL脚本应该包含如下内容 1.注释 2.设置字符集 3.基础路径参数 脚本路径 票据路径 日志路径 当前SHELL的脚本别名:declare SHELL_NAME=“${basename $0 |sed s/\./_/g}” eg:sss.sh =>sss_sh 票据文件 4.集群的相关认证 这些变量不做检查但是必须保证正确 client基础路径 source认证文件 kinit的路径 kinit的文件 5.检查程序传入参数 对参数个数的检查$# 对参数格式的检查 6.日志 日志的文…
把写代码过程中经常用到的一些代码段做个记录,如下代码段是关于python定义的一个简单的shell函数的代码. pipe = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = pipe.communicate() return pipe.returncode, stdout, stderr…
loadrunner除了自动录制脚本外,还可以手动编写脚本,通过右键+inset step添加步骤,还可以手动添加事务,集合点等 下面是一个简单的Action脚本,服务是运行在本机的flask服务: Action() { //集合点---可选步骤 //等待---可选步骤 //获取所有的发帖列表--单接口(自己本地实现的一个flask服务) //开始事物 lr_start_transaction("getList"); // 业务逻辑 // 0. 注册需要获取的参数(loadrunner…
一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂     建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用.所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行).  如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit.kedit.emacs.vi  等来编写我们…
使用已学习的各种C函数实现一个简单的交互式Shell,要求:1.给出提示符,让用户输入一行命令,识别程序名和参数并调用适当的exec函数执行程序,待执行完成后再次给出提示符.2.该程序可识别和处理以下符号:1) 简单的标准输入输出重定向:仿照例 "父子进程ls | wc -l",先dup2然后exec.2) 管道(|):Shell进程先调用pipe创建管道,然后fork出两个子进程.一个子进程关闭读端,调用dup2将写端赋给标准输出,另一个子进程关闭写端,调用dup2把读端赋给标准输入…
说明: 用平常的方式在Linux服务器上安装程序,需要下载安装包.进入安装包位置.给安装包文件赋予可执行权限.执行安装.设置环境变量--等等一系列复杂的操作.并且如果有关联也需要一个一个的挨着安装.耗时并且繁琐.而用shell脚本来执行这些操作,则很好的解决了这些问题! 步骤: wget http://img006.com/badusoft/centosupNEW.sh // 在Linux服务器上执行wget命令下载shell脚本 chmod +x centosupNEW.sh // 给下载下来…
Shell脚本 运作方式与解释型语言相当,如果有语言基础,学起 Shell 脚本就非常容易,但是 Shell 与常见的语言不同,一些常见的函数在 Shell 中需要组合一些命令得以实现 工具推荐 Shell 似乎没有定制的 IDE,这里推荐 VS Code 搭配对应的插件: shellman 智能提示和自动补全,在插件页面有介绍常用代码片段的触发关键词,作者在 Shellman reborn 中写到了 Shellman 诞生的故事,挺有趣的 shellcheck 语法静态检查工具,插件安装后需要…
~ 以下内容,仅供学习参考 ~ weblogic 反序列化补丁绕过漏洞已经出了两个月了,balabala ~~~ 废话不说,拿到该漏洞的利用工具weblogic.jar,但只能一个个检测ip和端口,效率有点低 ~  而我自己又没有能力去重写一个批量检测工具,于是乎就想能不能通过一些非技术手段 ~ 先看下该工具的使用方法: starnight:shell starnight$ java -jar weblogic.jar usage: supeream -B Runtime Blind Execu…
[FileLoadException: Could not load file or assembly 'sapnco_utils, Version=3.0.0.42, Culture=neutral, PublicKeyToken=50436dca5c7f7d23' or one of its dependencies. 由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题. (Exception from HRESULT: 0x800736B1)] 项目中要和sap系…
Shell脚本 编写Python.PHP脚本通常需要掌握语言的函数,那么Shell脚本则不需要,只需要掌握Linux命令就可以编写Shell脚本,因为Shell脚本就是由多个Linux命令组成,通过将多个Linux命令组合保存成一个脚本文件,可直接给其他人使用. 组合命令 进入一个目录,查看目录的文件,这个过程分别需要执行两条命令,分别是cd 和ls. 分开执行两个命令的形式如下: [root@lincoding usr]# cd /usr/ [root@lincoding usr]# [roo…
一 分析 要实现一个shell,需包含3个步骤 1)读入指令 2)指令解析 3)执行指令 1 从键盘读入指令 从键盘读入指令的几个要点: 1)调用getc函数等待并获取用户键盘输入. 2)每一行命令的结束符为'\n',getsline函数就是通过这个结束符来判断用户是否完成指令的输入. #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { ); char* prompt = &qu…
进程的相关知识是操作系统一个重要的模块.在理解进程概念同时,还需了解如何控制进程.对于进程控制,通常分成1.进程创建  (fork函数) 2.进程等待(wait系列) 3.进程替换(exec系列) 4.进程退出(exit系列,return)四个方面.在大致熟悉进程控制之后,便可基于此 ,来模拟使用一个简单的myshell,实现简单的命令解析. 在此之前,先来简单回顾进程控制一些基本方法 进程控制 (1)进程创建 进程创建一般通过fork来实现,(关于fork,前面有本人一点小小总结:戳=>,这里…
这个是个简单的vbs脚本,使用opentwebst进行录制 'Use the command line below to launch the script (or just double click the .vbs file): ' %windir%\system32\wscript.exe TwebstScript.vbs Option Explicit Dim core Dim browser Dim browser2 Set core = CreateObject("OpenTwebs…
1.编写shell脚本 ex1.sh,提示用户输入用户名,并判断此用户名是否存在. (提示:利用read.grep和/etc/passwd) #!/bin/bash echo "请输入用户名" read username #相当于scanf if grep $username /etc/passwd; then #if的结尾要有fi echo "存在" else echo "不存在" fi 2. 编写shell脚本 ex2.sh,能将命令行参数相…
shell脚本编程:        编程语言的分类:        根据运行方式            编译运行:源代码-->编译器(编译)-->程序文件                优点:运行性能好                缺点:如果修改源代码需要从头全部修改,耗时:后来出现了项目管理工具,可以把源代码分割保存到多个文件中,修改某个字段,只需要修改相应的文件即可                C语言:            解释运行:源代码-->运行时启动解释器,由解释器边解释…
文本处理工具:    linux上文本处理三剑客        grep,egrep,fgrep:文本过滤工具(模式:pattern)工具            grep:默认支持的是基本正则表达式:-E支持扩展正则表达式,-F不支持正则表达式            egrep:默认支持的是扩展正则表达式:-G支持基本正则表达式,-F不支持正则表达式            fgrep:默认不支持正则表达式:-G支持基本正则表达式,-E支持扩展正则表达式        sed:stream edi…
轩轩写的这个小脚本,主要是可以进行对dhcp服务的安装.简单配置.开启.关闭/查看状态等情况 使用呢非常简单,按照步骤进行准确的设置就可以啦 #!/bin/bashyum -y install dhcpfun()  {  input=""  output=$1  while [ -z $input ]         do        read -p "$output:" input        done        echo $input} subnet=$…
1.!$<!$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串.如:你可能会这样: $mkdir mydir$mv mydir yourdir$cd yourdir 可以改成: $mkdir mydir$mv !$ yourdir$cd !$ 2.sudo !!以root的身份执行上一条命令 . 场景举例:比如Ubuntu里用apt-get安装软件包的时候是需要root身份的,我们经常会忘记在apt-get前加sudo.每次不得不加上sudo再重新键入这行命令,这时可以很方便的用sudo…
windows系统的电脑, 首先右击桌面,选择新建-文本文档,在桌面上新建一个文本文档:     随后打开计算机或者是我的电脑,点击其中的组织(xp系统多为工具),选择下面的文件夹和搜索选项     在弹出的窗口中点击查看,向下滚到,找到隐藏已知文件类型的扩展名,点掉勾号,然后确定:     此时发现新建的文本文档出现后缀名为.txt     打开文本文档后,输入: msgbox"傻X",后保存.     修改文本文档的后缀,将.txt改为.vbs,后确定,双击打开.窗口弹出如图所示窗…
下面是工作中用到的链接数据库的shell程序. #!/bin/bash ] ; then echo "prase is wrong ,please check first" exit fi#知识点: 1,$#代表了命令行的参数数量 2,-le表示小于等于,拓展 lt表示小于,gt表示大于,ge表示大于等于,eq表示等于,ne表示不等于 if [ "$1"x != "online"x ] && [ "$1"x !…