linux脚本

linux进程守护脚本

自作多情 提交于 2019-11-30 18:14:19
为了防止进程异常挂掉,为了避免影响业务,编写一个守护进程,定时检查某个进程是否存在,如果不存在则自动启动该进程。 编写脚本文件daemon.sh文件 while true; do server=`ps aux | grep test| grep -v grep` if [ ! "$server" ]; then cd 目录 nohup java -jar -XX:PermSize=128m -Xms1024m -Xmx1024m test.jar & fi sleep 5 done 启动命令 nohup ./daemon.sh & 来源: https://www.cnblogs.com/zhangmingcheng/p/11634500.html

ping脚本--无网不利

你离开我真会死。 提交于 2019-11-30 18:12:45
一、本文主要涉及的内容 二、预备知识 1、打印网络接口列表 2、提取IP地址的小套路 3、更改网卡的MAC地址 4、高速的ping工具:fping 三、套路连招 1、通过一个for循环和ping列出所有活动的主机 2、通过for循环和arping列出所有活动的主机 3、通过for循环、并行ping列出所有活动的主机 一、本文主要涉及的内容 l 预备知识 l 套路连招 二、预备知识 1、打印网络接口列表 下面这是原始的显示 我们想要的显示效果是这样的,如下所示: eth0 lo 怎么办呢? 我们首先看到,eth0和lo这两串字符都是位于每一行的最开始的位置,大约是前10个字符的位置,所以我们可以使用列切割工具,切割每一行的前10个字符,也就是通过字符切割。我们用cut的时候经常用的是通过定界符切割,其实cut可以通过三种方式对文本进行切割,如下所示: -b, --bytes=LIST #通过字节切 -c, --characters #通过字符切 -d, --delimiter=DELIM #通过定界符切 我们需要的是通过字符切,也就是通过-c选项,切出每一行的前10个字符,效果如下所示: [root@centos6-1 ~]# ifconfig | cut -c -10 eth0 lo 如上所示,切完了之后,出现了一个大量的空行,我们只要把这些空行给压缩一下了不就好了吗

Linux系统初始化脚本

我们两清 提交于 2019-11-30 17:38:24
#查看centos的版本号 CentOS_version=`cut -d" " -f 4 /etc/centos-release | cut -d"." -f 1` #改变PS3格式 PS3="Please enter the option you need to optimize: " #网卡名称 network_name=`ip a|sed -r -n 's/.. (e.*):.*/\1/p'` #网卡的个数 network_card_sum=`echo $network_name | wc -w` ######################判断是否root用户###################### Judge_root() { if [[ `id | sed -r -n "s/uid=([0-9]{1,4}).*/\1/p"` != 0 ]];then   echo -e "\e[1;31mYou are not a root user and you are not allowed to set this optimization.\e[0m\n"   break fi } ######################关闭防火墙和selinux###################### close_firewalld_selinux() {   Judge

2019安全渗透类工具合集

流过昼夜 提交于 2019-11-30 17:08:44
子域名爆破枚举或接管 https://github.com/lijiejie/subDomainsBrute - Lijiejie开发的一款使用广泛的子域名爆破枚举工具 评分 : 🌟🌟🌟🌟🌟 | 编程语言 : Python 2.x | 仍在维护 : ✖️ https://github.com/ring04h/wydomain - 猪猪侠开发的一款域名收集全面、精准的子域名枚举工具 评分 : 🌟🌟🌟🌟🌟 | 编程语言 : Python 2.x | 仍在维护 : ✖️ https://github.com/le4f/dnsmaper - 子域名枚举爆破工具以及地图位置标记 评分 : 🌟🌟 | 编程语言 : Python 2.x | 仍在维护 : ✖️ https://github.com/0xbug/orangescan - 提供web界面的在线子域名信息收集工具 评分 : 🌟🌟🌟 | 编程语言 : Python 2.x | 仍在维护 : ✖️ https://github.com/TheRook/subbrute - 高效精准的子域名爆破工具,同时也是扫描器中最常用的子域名API库 评分 : 🌟🌟🌟🌟 | 编程语言 : Python 2.x | 仍在维护 : ✖️ https://github.com/We5ter/GSDF - 基于谷歌SSL透明证书的子域名查询脚本 评分 :

Python基础(四) - 自动在Windows中运行Python脚本并定时触发作业

荒凉一梦 提交于 2019-11-30 13:03:03
简介 讲一下在Python中写好了一个脚本之后,怎么自动双击一个程序自动就跑起来。 以及,怎么在Windows 10中设计定期定时触发并跑脚本。 环境介绍 系统环境:Windows 10 Python版本:Python 3.5 必备包:无 运行Python脚本:.bat文件 在Windows中,.bat文件是批处理文件,是与Linux中.sh(shell)文件很像的东西。 如果,我们想在Windows中运行一个Python脚本,我们可以通过CMD,首先进入python文件所在的目录,之后运行。 但是这样很麻烦,每次都要打开CMD,进入文件夹,运行文件。 所以,我们为了不每次都重复输入,建议把这些代码统一写在一个txt文件中,写完之后只要把txt文件的后缀改为.bat,然后双击运行就行啦。 举例: 假设我们在“C:\Users\Desktop”目录中有一个名为“test.py”的脚本。 我们希望能有一个类似exe一样的东西,每次一双击,自动就会跑出结果。 那么,我们可以进行下面几个步骤: 在任意文件夹中,创建一个记事本文件(后缀.txt),打开文件 在文件夹中输入如下内容:(第一句是用来切换文件夹路径的,第二句是用来运行python脚本的) cd C:\Users\Desktop python test.py 保存退出 将记事本的后缀由 .txt 改为 .bat 这时,双击

Linux添加磁盘脚本

浪尽此生 提交于 2019-11-30 11:53:27
在一台新的服务器上,设置环境,配置yum源,安装httpd服务,添加对应防火墙端口,给硬盘分区666MB格式化,挂载到/homework下,永久生效 #!bin/bash getenforce setenforce 0 echo -e "SELINUX=disabled\nSELINUXTYPE=targeted" > /etc/selinux/config cd /etc/sysconfig/network-scripts ip a read -p "请输入网卡名称" NM read -p "请输入IP地址" IP read -p "请输入子网掩码" YM read -p "请输入网关地址" WG echo "NAME=$NM DEVICE=$NM ONBOOT=yes BOOTPROTO=none IPADDR=$IP NATEMASK=$YM GATEWAY=$WG DNS1=$WG" > /etc/sysconfig/network-scripts/ifcfg-$NM systemctl restart network mkdir /iso mount /dev/cdrom /iso echo "/dev/sr0 /iso iso9660 defaults 0 0" >> /etc/fstab mkdir /etc/yum.repos.d/bak mv /etc/yum

Linux安装python环境脚本

廉价感情. 提交于 2019-11-30 11:26:41
自动安装python环境的脚本 1.首先判断是不是root用户 2.判断是否安装 3.是否下载成功(网络可能有问题) 4.是否解压成功(文件下载可能缺少) 5.安装配置python环境 # coding=utf-8 import os import sys if os.getuid()==0: pass else: print "当前用户不是root用户,请登录root用户执行脚本" sys.exit(1) version = raw_input('是否安装python版本3.5?(y/n)') if version == 'y': url = 'https://www.python.org/ftp/python/3.5.7/Python-3.5.7.tgz' else: print '退出程序' sys.exit(1) cmd = 'wget '+url res = os.system(cmd) if res != 0: print '下载源码包失败,请检查网络' sys.exit(1) package_name = 'Python-3.5.7' cmd = 'tar xf '+package_name+'.tgz' res = os.system(cmd) if res != 0: os.system('rm '+package_name+'.tgz') print

Shell 三三两两(1)

北城余情 提交于 2019-11-30 05:56:11
在Shell脚本中或多或少遇到$1-$9 , $0 , $? , $! , $$ , $*, $# , $@ 这些特殊意义的命令符。如果你是一位初学者,那么恭喜你看它就像看老道写的符箓,有点摸不着边?是要死记硬背?还是理解一下再记忆呢?我想还是理解一下再记吧! 简要说明一下: 一、与参数相关: $1-$9 , $0 ,$# , $*, $@ 1)$1-$9 表给Shell的第几个参数:   在计算机语言编写一段代码总会涉及到什么形参、实参,即一段代码需要传递参数来保持灵活性。那么我们在编写shell脚本时,实际上就是实现一段功能的脚本代码,为了应对脚本灵活性那么就需要参数,那么参数们在shell脚本中使用时总要一个编号吧,否则怎么知道你是第一个,他是第二个……。现在shell爸爸说了,$1就表示第一个参数,$2就表示第2个参数,以此类推到$9表示第9个参数了;那么还要给shell脚本第10个,第11个……怎么办?shell爸爸说前面我有点考虑不足,$10到底表示第一参数$1值再加个0呢?还是第10个参数?所以shell规定了,要表示第10个,第11个……用${}包围起来,${10}表示第10个参数,${11}表示第11个参数,……以此类推。 2) $0 表示执行本Shell的脚本/命令的名称。   前面$1-$9表示给shell脚本的第几个参数,那么谁需要这些参数呢?这不简单

Linux运行shell脚本提示No such file or directory错误的解决办法

限于喜欢 提交于 2019-11-30 04:35:27
Linux执行.sh文件,提示No such file or directory的问题: 原因:在windows中写好shell脚本测试正常,但是上传到 Linux 上以脚本方式运行命令时提示No such file or directory错误,那么一般是文件格式是dos格式的缘故,改成unix 格式即可。一般有如下几种修改办法。 1)在Windows下转换: 利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 2)操作步骤 用vim打开该sh文件,输入: :set ff 回车,显示fileformat=dos,重新设置下文件格式: :set ff=unix 保存退出: :wq 再执行,竟然可以了 3)在Linux中的权限转换 也可在Linux中转换: 首先要确保文件有可执行权限 #chmod u+x filename 然后修改文件格式 #vi filename 三种方法都可以方便快速的解决关于Linux执行.sh文件,提示No such file or directory这个问题了。 所以,程序尽量在Linux下编写,迁移时,也许会少很多问题。 本文转自 https://blog.csdn.net/fireblue1990

linux 一些脚本语法

我只是一个虾纸丫 提交于 2019-11-30 03:50:00
sed是用来处理文本的 s/正则表达式/替换字符串/ :表示将正则表达式的内容替换为后面的字符串 g :表示替换全部,即如果不加g,则只会替换第一个 比如更改很多数据库的某个字段 update.sql {   ALTER TABLE db.role CHANGE LIE1 LIE2 mediumblob DEFAULT NULL; } updatedb.sh {   for(int i =1;i <= 100; i++)   do     name = world$i     cat update.sql | sed "s/db/$name/g" | mysql -h -u -p   done }   来源: https://www.cnblogs.com/hhxj/p/11556068.html