linux脚本

linux登录脚本(需密码方式)

匿名 (未验证) 提交于 2019-12-02 21:56:30
#!/usr/bin/env python3 # -*- coding: utf-8 -*- import os,sys #计数器,记录错误数来强制结束程序。 err_num=0 TNS={ '172.16.132.3':{'username':'root','password':'xxxx','medo':'主Master'}, '172.16.132.14':{'username':'root','password':'xxxx','medo':'主Master'}, '172.16.132.15':{'username''root','password':'xxxx','medo':'主Master'}, '172.16.132.16':{'username':'root','password':'xxxx','medo':'主Master'}, '172.16.132.17':{'username':'root','password':'xxxxx','medo':'主Master'}, '172.16.132.18':{'username':'root','password':'xxxxx','medo':'主Master'}, '172.16.132.119':{'username':'root','password':'xxxxx','medo':'主Master'}

Linux下禁用笔记本键盘

匿名 (未验证) 提交于 2019-12-02 21:56:30
使用方式 :手动执行 执行效果 :执行一次脚本, 插入外设键盘时,禁用笔记本键盘;未插入外设键盘时,使用笔记本键盘 所需软件包 :xinput 所需变量 :外设键盘名,笔记本键盘名 使用步骤 : 安装 xinput 软件 ubuntu终端输入 sudo apt-get install xinput centos终端输入 sudo yum install xinput 其他linux系统自行百度安装 xinput 查找外设键盘名 未插入 外设键盘,终端输入 xinput 插入 外设键盘,终端输入 xinput 对比输出文本中 多出的部分 ,就是外设键盘名。如下面的 SEMICO USB Keyboard ps:外设键盘名可能有多个id,无需担心,它们的名称都一样的 新建脚本 keyboard.sh ,内容如下, 必须在步骤2中手动查找外设键盘名,并在keyboard.sh中修改外设键盘名 ps:若想多场景使用,可以参照 扩展脚本 外设键盘B 的方式修改 #!/bin/bash # 笔记本键盘名 #默认是这个,如果不是,使用xinput中判断您的笔记本键盘名 KEYBOARD_DEV='AT Translated Set 2 keyboard' # 外设键盘名 #通过步骤2获取外设键盘名,该变量必须修改 USB_KEYBOARD_DEV='SEMICO USB Keyboard'

企业SVN版本管理与代码上线方案

匿名 (未验证) 提交于 2019-12-02 21:53:52
1.SVN服务实战 1) 什么是SVN(Subversion)? Svn(subversion)是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN是一个跨平台的开源的版本控制系统。Svn版本管理工具管理着随时间改变的各种数据。这些数据放置在一个中央资料档案库(repository)中,这个档案库很像一个普通的文件服务器或者FTP服务器,但是,与其他服务器不同的是,SVN会备份并记录每个文件每一次的修改更新变动。这样我们就可以把任意一个时间点的档案恢复到想要的某一个旧的版本,当然也可以直接浏览指定文件的更新历史记录。 为什么会有svn这样一个项目? 官方解释:为了接管CVS的用户基础,确切的说,我们写了一个新的版本控制系统,它和CVS很相似,但是它修正了以前CVS所没有解决的许多问题。问题见SVN官方首页。 SVN是一个非常通用的软件系统,它常被用来管理程序源码,但是它也可以管理任何类型的文件,如文本,视频,图片等等。 svn版本控制系统是集中式的数据管理,存在一个中央版本库,所有开发人员本地开发所使用的代码都是来自于这个版本库,提交代码也都必须提交到这个中央版本库。 svn版本控制系统工作流程如下: 在中央库上创建或从主干复制一个分支 从中央库check out 下这个分支的代码 增加自己的代码文件,修改现存的代码或删除代码文件 commit代码

Linux运维自动化脚本之rsync

匿名 (未验证) 提交于 2019-12-02 21:53:52
Linux运维自动化脚本之rsync 起因   因为要做同步日志的脚本,考虑到机器比较多,后面也要扩展。   最近在学Python(写的比较菜)。 ˼·   组成:配置文件 + 执行脚本     脚本执行后读取配置文件的各个字段内容,并且赋值给对应的变量,在执行命令。 配置文件格式:   密码文件路径;用户名;IP;模块名;目标位置路径 Code: #!/bin/ env python import time,os,datetime with open( ‘config/ auto_rsync.conf ‘ , ‘ r ‘ ,encoding= ‘ utf-8 ‘ ) as f: file_info = f.readlines() count = 0 count1 = 1 for file_use in file_info: file_use.strip( " " ) if file_use[ 0 ] == " # " or file_use[ 0 ] == " \n " : continue else : file_line = file_use.split( " ; " ) count += 1 while count1 <= count: PASS,USER,IP,MOD_NAME,DDIR = file_line[ 0 ],file_line[ 1 ],file_line[

shell分享

折月煮酒 提交于 2019-12-02 20:18:58
shell脚本分享 一、介绍shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 Shell 脚本(shell script),是一种为 shell 编写的脚本程序。 业界所说的 shell 通常都是指 shell 脚本。 shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。 为什么使用shell脚本? 简化对于多个重复命令的操作,适用于批处理。(原本是觉得docker没有怎么简化操作,每次都要敲那么多代码,后来发现可以用shell脚本写脚本批处理运行之)。 shell脚本以.sh为文件名的后缀(不强制,规范而已) 脚本第一行以 #!/bin/bash 或者 #!/bin/sh 开头(不是必须的) 执行: 1. chmod +x 脚本名 : 授予执行权 然后可以 ./文件名运行 2. sh 脚本名 3. /bin/bash 脚本名 4. bash 脚本名 二、代码实操 hello world vim helloworld.sh #!/bin/bash echo "hello wolrd!!!" 运行 sh

安装docker的shell脚本

旧城冷巷雨未停 提交于 2019-12-02 20:17:47
docker_install.sh #!/bin/bash # author:qiao # 安装并启动docker # 使用阿里云镜像 安装社区版 # 卸载旧的版本 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine # 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 更新并安装 Docker-CE(社区版) sudo yum makecache fast sudo yum -y install docker-ce # 启动docker sudo systemctl start docker 验证是否成功,出现client和service就成功了 docker version 运行 sh docker

Linux启动过程

爷,独闯天下 提交于 2019-12-02 20:12:08
Linux启动过程 前言:   Linux 是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。在加上用户空间的应用程序之后,成为Linux操作系统。Linux是自由软件和开放源代码软件发展中最著名的例子。   接触Linux的时间也不算短了,一直都是直接使用Linux操作系统进行一些工作,很少去了解系统从开机到能使用的整个过程,感觉有需要好好理解下整个系统的启动过程,故写这篇博客加深一下理解。 先通过一张图来简单了解下整个系统启动的流程,整个过程基本可以分为POST-->BIOS-->MBR(GRUB)-->Kernel-->Init-->Runlevel。下面会详细说明每个过程的作用。 图1-1:系统启动流程 BIOS   BIOS(Basic Input/Output System),基本输入输出系统,该系统存储于主板的ROM芯片上,计算机在开机时,会最先读取该系统,然后会有一个加电自检过程,这个过程其实就是检查CPU和内存,计算机最基本的组成单元(控制器、运算器和存储器),还会检查其他硬件,若没有异常就开始加载BIOS程序到内存当中。详细的BIOS功能,这边就不说了,BIOS主要的一个功能就是存储了磁盘的启动顺序,BIOS会按照启动顺序去查找第一个磁盘头的MBR信息,并加载和执行MBR中的Bootloader程序

shell基础 -- 基本语法

微笑、不失礼 提交于 2019-12-02 19:21:39
目录 1.1 变量的命名 1.2 变量的赋值 1.3 变量的类型 2.1 使用 expr 命令对算术表达式求值 2.2 使用 $(( ... )) 的方式对算术表达式求值 3.1 bash 计算器 bc 3.2 在脚本中使用 bc 5.1 if 语句 5.2 case 语句 5.3 for 语句 5.4 while 与 until 语句   本文介绍一下 shell 的语法。 一、变量   在 shell 里,使用变量之前通常并不需要事先为他们做出声明,需要使用的时候直接创建就行了。 默认情况下,所有变量都被看做字符串并以字符串来存储,即使它们被赋值为数值时也是如此 。shell 和一些工具会在需要时把数值型字符串转换成对应的数值以对它们进行操作。 回到顶部 1.1 变量的命名   shell 变量的命名规则如下: 开头是一个字母或下划线,后面可以接任意长度的字母、数字或下划线符号,变量名的字符长度并无限制 (Bourne shell中)。不过为了兼容性(一些早期的shell里变量名是有长度限制的),一般还是不要超过255个字符。另外, Linux 区分大小写 。当用户自己定义变量的时候,要注意变量名不能与 shell 中的关键字重名。 回到顶部 1.2 变量的赋值   shell 中变量的赋值方式如下: 变量名=值 # 注意 赋值语句两边不能有空格   注意,

Linux之systemd服务配置及自动重启

笑着哭i 提交于 2019-12-02 16:56:28
layout: post title: Linux之systemd服务配置及自动重启 date: 2019-09-09 tags: linux --- Linux之systemd服务配置及自动重启 0 背景 在linux上开发时,往往需要将自己的程序做成服务,并且实现服务开机自动重启,以及服务崩溃后自动重启功能,本文就对该功能的实现做简单介绍,实现方法很简单,使用linux系统的systemd即可实现 1 systemd介绍 历史上,linux的启动一直采用init进程,比如 $ sudo /etc/init.d/apache2 start 或者 $ service apache2 start 这种方法有两个缺点。 一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。 二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。 Systemd 就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。 根据 Linux 惯例,字母d是守护进程(daemon)的缩写。 Systemd 这个名字的含义,就是它要守护整个系统。使用了 Systemd,就不需要再用init了。Systemd 取代了initd,成为系统的第一个进程(PID 等于 1),其他进程都是它的子进程。

Shell 编程

为君一笑 提交于 2019-12-02 16:42:21
Shell 编程 1.什么是shell shell是一个命令解释器, 将人类输入高级语言, 通过 Shell程序 转换为 二进制 、 shell分为两种使用方式: ​ 交互: 登录 执行命令 退出 ​ 非交互: 执行某个文件, 文件中都是一推命令, 整个文件从上往下依次执行 2.什么是shell 脚本 (1) 将系统命令堆积在一起,顺序执行(简称: 系统命令堆积 (2) 特定的格式 + 特定的语法 + 系统的命令 = 文件 3.shell 脚本能做什么 标准: 1.安装方式一致 2.安装路径一致 3.目录结构一致 4.日志格式一致 5.脚本路径一致 6.能将平时操作脚本化,流程化,自动化 ITIL ppt 人 流程 技术/工具 备份 监控 自动化上线 约束标准 4.shell 脚本书写规范 执行方式分为两种: ​ 1.加执行权限 ./script_filename.sh ​ 2.通过bash直接翻译 bash script_filename.sh 问题: #!/usr/bin/bash 加与不加区别在哪? 1.如果你明确清楚这是一个什么类型的脚本,直接调用对应的解释器执行,没有影响? 2.如果你不清楚是什么类型的脚本, 直接使用./执行,那么会读取该脚本的第一行 如果第一行是#!/usr/bin/bash 或者 没有写该行,那么都将使用默认的bash翻译 问题: