linux下使用shell脚本批处理命令】的更多相关文章

1.新建脚本touch first.sh 2.写入命令vi first.sh #!/bin/bash #publish service and api echo "copy file" docker cp /home/huqing/dotnet/a.zip common_api:/usr/api/a.zip docker cp /home/huqing/dotnet/b.zip common_service:/usr/service/b.zip echo "unzip fil…
Linux下添加shell脚本使得nginx日志每天定时切割压缩一 简介 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常时查日志,还是使用"GoAccess"等工具对日志进行分析都将会变得非常麻烦.因此,每天定时对nginx日志进行切割压缩就非常有必要了 二 实现 我的实现思路是每天晚上接近12点时定时执行脚本.其脚本内容就是将当前的nginx日志先按照当天日期进行重命名接着进行压缩,最后是新建空白的ngi…
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccccccccccccccc eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ggggggggggggggggggggggggggggggggggggggg wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww zzzzzzzzzzzzzzzzz…
场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cp  ~/.ssh/id_dsa.pub authorized_keys 如果有邮箱的话,使用 ssh-keygen -t rsa -C anl@163.comcat ~/.ssh/id_rsa.pub 然后使用winscp或者fileziall之类的文件…
常常在windows下编辑的文件远程传送到linux下的时候每行末尾都会出现^M.这将导致shell脚本执行错误,主要是由于dos下的编辑器和linux下的编辑器对文件末行的回车符处理不一致导致. 主要解决例如以下: (1)在VI编辑器中将^M删除: 将VI编辑器切换到命令模式下,输入 :%s/^M//g (注意^M 不是shift ^ +M 而是ctrl+v 加上ctrl+m)  s///g是shell的替换命令 此命令必须是手动打上,不可复制. (2)dos2unix 命令 dos2unix…
shell有些命令和格式不用老是容易忘,学而时习之,不亦说乎~ 先说明以下内容来自: http://c.biancheng.net/cpp/shell/ ,C语言中文网,请大家支持原作,点击链接查看. 我写下来只是作为笔记,如果侵权,请留言,立马删除. Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有: bash:是Linux标准默认的shell.bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有…
Shell 脚本的执行方式通常有如下三种: (1)bash script-name 或者 sh script-name:(2)path/script-name或者./script-name:(3)sourcescript-name或者. script-name.下面,分别介绍下这三种方式的特点: (1)bash script-name或者sh script-name 这是当脚本文件本身没有可执行权限(即文件权限属性x位为-号)时常使用的方法,或者脚本文件开头没有指定解释器时需要使用的方法.推荐使…
什么是shell? Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户.这种对话方式可是交互也可以是非交互式的,我们所输入的命令计算机是不识别的,这时就需要一种程序来帮助我们进行翻译,变成计算机能识别的二进制程序,同时又把计算机生成的结果返回给我们.   什么是SHELL脚本? shell脚本:就是说我们把原来linux命令或语句放在一个文件中,然后通过这个程序文件去执行时,我们就说这个程…
在Java开发项目时经常要把正在开发的项目发布到测试服务器中去测试,一般的话是要把项目先打成war包,然后把war包发布到服务器中,关闭服务器, 最后重新启动服务器,虽然这过程不是很繁琐,但如果是多个工程都要发布的时候,发布的过程就会比较繁琐,所以福音来了…… 通过 编写shell 脚本来完成这些操作,只要执行一个shell脚本,项目就可以自动发布到服务器了,用起来还是比较方便的. 第一步:在linux中安装svn.(这个可以参照另外一篇博客:http://simplelife.blog.51c…
先说明以下内容来自: http://c.biancheng.net/cpp/shell/ ,C语言中文网,请大家支持原作,点击链接查看. 我写下来只是作为笔记,如果侵权,请留言,立马删除. Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有: bash:是Linux标准默认的shell.bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个. sh: 由Steve Bourne开发,是Bourne…
本来直接用crontab -e 就可以打开vim,输入要执行的任务保存退出就可以添加任务直接启动运行了.但是今天组长说能不能写个shell不用打开vi就能添加到crontab的. 最先想到的是怎么在shell脚本里面如何使用vi的命令,网上找了好多,要么格式太乱,要么没明白意思直接告诉vi的使用方法,所以只好舍弃了. 下面说我的方法吧 test.sh :里面写的是要执行的具体任务. call.sh是交个人直接双击就能实现添加crontab任务的:内容如下: #!/bin/sh echo "*/5…
获取终端大小时候的学习 学习日期:2018/11/3 问题来源: 在写shell脚本时想输出一行占满整个终端屏幕宽度的 横杠 发现for循环会导致执行缓慢 解决方法: 使用yes 命令 sed '50q' 显示50行 tr -d '\n' 删除 \n 多次重复输入相同字符可用yes yes "2" | sed '50q' | tr -d '\n' 想法来自:打印100个连续的符号,不用循环 stty size (获取终端大小) stty size|awk '{print $2}' 最终…
当我们在linux平台上开发一些项目时,或者有一些项目是需要部署到linux系统上时,有时候会涉及到linux上的特定的账户,例如有一些项目需要运行在某些特定的账户下,或者有时候需要在全新的环境上搭建一些环境(例如:LAMP)linux+apache+mysql+php 时都可能会涉及到需要添加一些账户信息.如果此时用脚本来维护这些account,就会简化一些不必要的操作,大家应该都知道在linux如果手动添加用户都会涉及到一个交互的操作,无论你是用useradd命名或者直接操作/etc/pas…
对mifeng数据库进行每周六3:33完全热备份,并可以完全恢复! 一.先建立备份脚本 #vi /mifengbackup/backup.sh #!bin/bash cd /mifengbackup echo "You are in backup dir" mv backup* /oldbackup echo "Old dbs are moved to oldbackup folder" File = backup-$Now.sql mysqldump -uroot…
#!/bin/sh 1 取脚本参数 $# 参数个数$0 当前脚本名$1 第1个参数$n 第n个参数$* 所有参数$@ 所有参数$? 上个命令的状态$$ 当前pid 2 日期 $ dateWed Mar 27 17:27:18 CST 2019$ date +"%Y-%m-%d %H:%M:%S"2019-03-27 17:28:27$ date +"%Y-%m-%d %H:%M:%S" --date="-1 day"2019-03-26 17:2…
自动备份数据库,并将备份前一天的数据移动拷贝到存储上. 需求来源是因为linux系统层的磁盘存储容量过小,数据库自动备份之后日积月累数据越来越多,而且还不想删除旧数据.那解决方法就是在linux系统主机上挂载存储到指定目录,然后利用脚本实现备份数据库文件自动拷贝移动到存储.具体实现方法如下: 1.编写备份数据库脚本 mysqldump -uroot -p(mysql密码) zabbix > /root/mysql.bak/zabbix`date +%Y%m%d`.sql 2.编写备份数据自动拷贝…
首先ftp配置应为虚拟用户登录模式 用户密码文本目录为/etc/vsftpd/vftpuser,代码如下: #!/bin/bash # ];then username=$ password=$ homepath=$ for U in `sed -n '1~2p' /etc/vsftpd/virtual_list`;do if [ $username == $U ];then echo "user '$username' already exists" exit fi done if […
绝对路径 /xxx/xxx/something.sh /xxx/xxx/executable 相对路径 ./something.sh ./executable 注意:前边得加./,可不是像windows(dos)下那样直接输入: something.bat(cmd) executable.exe(com)…
#该管理系统是参考两位博主(时间有点远了,我忘了,请博主看到后联系我)后自行修改添加的.登录过程还有很多不完善,我就抛砖引玉啦. 废话不多,直接上码! #!/bin/bash# 学生管理系统# @version 1.0 #设置全局变量##学生信息和学院信息#学院相关变量school_num=""school_name="" #学生相关变量stu_num=""stu_name=""stu_des="" #成绩…
两个短文件 两个空文件 一空一短 两长…
程序猿都非常懒,你懂的! 近期在开发中,须要用到server的ip和mac信息.可是server是架设在linux系统上的,对于多网口,在获取ip时就产生了非常大的问题.以下是在windows系统上,java获取本地ip的方法.贴代码: package com.herman.test; import java.net.InetAddress; /** * @see 获取计算机ip * @author Herman.Xiong * @date 2014年5月16日 09:35:38 */ publ…
关于linux下通过shell命令(自动)修改用户密码 2012-04-23 18:47:39 分类: 原文地址:关于linux下(自动)修改用户密码 作者:ubuntuer 本文章总结了如何手动.自动修改本地用户密码及远程机器的用户密码.对做自动化测试提供了自动修改用户密码的原理及方法. 修改本地用户密码:1.交互配置本地用户:以root用户: passwd <username>Changing password for user dewang.New UNIX password: BAD…
1.各种Unix shell linux下的shell基本是从unix环境中的shell发展而来,贴一下wiki:其中我们常用的,可归类为Bourne Shell(/usr/bin/sh或/bin/sh).Bourne Again Shell(/bin/bash).C Shell(/usr/bin/csh).K Shell(/usr/bin/ksh).Shell for Root(/sbin/sh),等等 第一个Unix shell是由肯·汤普逊,仿效Multic上的shell所实现出来,称为s…
--Linux下使Shell 命令脱离终端在后台运行------------------------------------2014/02/14你是否遇到过这样的情况:从终端软件登录远程的Linux主机,将一堆很大的文件压缩为一个.tar.gz文件,连续压缩了半个小时还没有完成,这时,突然你断网了,你登录不上远程Linux主机了,那么前面的半个小时就会前功尽弃,你非常气愤…… 在Linux下,如果你要执行的shell命令耗时特别长,并且:(1)你的网络不稳定,随时可能断网:或者(2)你在执行了s…
文章来自:http://www.blogjava.net/decode360/archive/2009/09/18/287743.html Decode360's Blog  老师(业精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com) 菜鸟表示不会写shell脚本,但还是能够看懂的,昨天因为传了太多数据,结果namenode进入了safe mode,然后小伙伴赶紧就暂停了每天早晨4点自动执行的数据合并压缩和传输的脚本,今天我自己准备改,才发现这篇博文.…
Linux下的shell与make 一.shell 1.1 什么是shell ● 用户与Linux的接口 ● 命令解释器 ● 支持多用户 ● 支持复杂的编程语言 ● Shell有很多种,如:csh,tcsh,pdksh,ash,sash,zsh,bash等.Linux的缺省Shell为bash(Bourne Again Shell). Shell是用户和操作系统之间最主要接口.通过Shell,可以同时在后台运行多个应用程序,并且在把需要与用户交互的程序放在前台运行. 通过在多条命令的序列中使用变…
(1)MySQL的启动 重启了一次服务器后,使用> mysql -u root -p登陆是出现下面的错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 查看状态: > /etc/rc.d/init.d/mysqld  status 显示stop,未运行:>/etc/rc.d/init.d/mysqld  restart (2)mysql数据库导入.…
今天学习Linux下定时执行脚本,看到一篇讲解比较好的文章,特此拿来分享. 原文链接:http://www.blogjava.net/decode360/archive/2009/09/18/287743.html Linux下定时执行脚本 首先查看一下/etc/crontab文件:   $ cat /etc/crontab SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/ # run-parts01 * * *…
Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具.由于它是基于SSH的,会在传输过程中对用户的密码.数据等敏感信息进行加密,因此可以有效的防止用户信息在传输的过程中被窃取,比FTP有更高的安全性.在功能方面与FTP很类似,不仅可以传输文件数据,而且可以进行远程的文件管理(如建立,删除,查看文件列表等操作).Sftp与ftp虽然只有一字之差,但基于…