shell脚本

Linux配置定时crontab及环境变量

Deadly 提交于 2020-01-21 11:58:16
一、linux配置定时crontab 1、执行方法   a、crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。   b、10 0 . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh   c、crontab -l:显示 crontab 文件,查看定时配置。 2、定时含义(参考附件crontab格式说明) 五个参数依次代表的含义分、时、日、月、星期。 3、秒级定时任务执行采取sleep方式,执行的时间间隔要能被60整除,如下例子。也可以把sleep命令写进程序中然后引入程序。 例如: 程序每10s执行一次 . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 10; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 20; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 30; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 40; . ./.bash_profile;sh /home/zjtxjb_scp1/etc

Linux配置定时crontab及环境变量

假装没事ソ 提交于 2020-01-21 11:40:16
一、linux配置定时crontab 1、执行方法   a、crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。   b、10 0 . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh   c、crontab -l:显示 crontab 文件,查看定时配置。 2、定时含义(参考附件crontab格式说明) 五个参数依次代表的含义分、时、日、月、星期。 3、秒级定时任务执行采取sleep方式,执行的时间间隔要能被60整除,如下例子。也可以把sleep命令写进程序中然后引入程序。 例如: 程序每10s执行一次 . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 10; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 20; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 30; . ./.bash_profile;sh /home/zjtxjb_scp1/etc/shell/x.sh sleep 40; . ./.bash_profile;sh /home/zjtxjb_scp1/etc

Linux shell编程学习笔记(一)

て烟熏妆下的殇ゞ 提交于 2020-01-21 04:57:27
Linux shell编程笔记 一:脚本开头固定格式: #!/bin/bash 申明这是一个shell脚本文件 二:脚本保存后缀为 .sh ;运行.sh的方式有两种: (1)./接文件名.sh的方式运行 (2)/bin/sh ./文件名.sh 区别:第一种直接以点斜杠运行的方式,有时候需要先赋予文件可执行权限,第二种方式则可以直接运行,不需要赋予执行权限 三:shell脚本 (1)变量定义:直接A=123或者FILE=“D:/xuexi/” 即可 (2)变量的引用:$A或者$FILE 注意$与变量名之间不能有空格;$不仅可以引用变量,也可以直接引用其他命令的执行结果,然后赋值给其他变量 如:USER=$(cat /root/users.txt) (3)系统常用的一些变量引用: $# 是传给脚本的参数个数 $0 是脚本本身的文件名 $1 是脚本后接的第一个参数 $2 是脚本后接的第二个参数 $@ 是传给脚本的所有参数列表,"$1" "$2" "$3" … "$n" $* 是以一个单字符串显示传给脚本的所有参数,"$1 $2 $3 … $n" $$ 是脚本运行的当前进程ID号 $? 是最后运行命令的结束状态码,0表示没有错误,其他表示有错误 (4)Linux中没有单引号 表示字符或者字符串需要用双引号引起来; 注意单引号与反引号的区别:反引号是键盘上Esc键下的那个键,与单引号是不同的

shell脚本结构化之循环命令

寵の児 提交于 2020-01-20 19:59:52
循环是编程的一个重要部分,bash shell提供了三种可用于脚本中的循坏命令 for 命令 while命令 until 命令 这些都没有好讲的,注意下格式就行了,看两个实例 查找可以执行的文件 #!/bin/bash IFS = : for folder in $PATH do echo " $folder :" for file in $folder /* do if [ -x $file ] then echo " $file " fi done done 创建多个用户账号 #!/bin/bash input = "users.csv" while IFS = ',' read -r userid name do echo "添加用户 $userid " useradd -c " $name " -m $userid done < " $input " 来源: CSDN 作者: weixin_46025444 链接: https://blog.csdn.net/weixin_46025444/article/details/104050657

shell脚本中报binary operator expected错

主宰稳场 提交于 2020-01-20 12:41:04
shell脚本中遇到的坑 如下代码,报错【binary operator expected】 这个错说什么期望二进制运算符,没搞懂 # get date if [ -z $1 ]; then echo 'no date set, exit now' exit 1 fi d1=$(date -d "$1" +%Y-%m-%d" "%H:%M:%S) if [ -z $2 ]; then d2=$(date -d "$1 +1 day" +%Y-%m-%d" "%H:%M:%S) else d2=$(date -d "$2" +%Y-%m-%d" "%H:%M:%S) fi 问题在哪里呢,这块if [ -z $1 ]; then中的获取变量,使用双引号引起来就好了!示范:if [ -z “$1” ]; then 来源: CSDN 作者: 骚白~ 链接: https://blog.csdn.net/qq_43473129/article/details/104048052

Mysql设置环境变量和mysqld简介

久未见 提交于 2020-01-19 15:21:55
文章目录 设置环境变量 mysqld - The MySQL Server 参考文档 设置环境变量 可以在命令提示符处设置环境变量以影响命令处理器的当前调用,也可以永久设置环境变量以影响以后的调用。要永久设置变量,您可以在启动文件中设置它,也可以使用系统提供的接口来设置它。 要为环境变量指定值,请使用适合您的命令处理器的语法。Unix上的语法取决于您的shell。假设您要使用MYSQL_TCP_PORT变量指定TCP/IP端口号 。典型语法(例如sh,ksh, bash,zsh等)如下: MYSQL_TCP_PORT=3306 export MYSQL_TCP_PORT 第一个命令设置变量,export命令将变量导出到shell环境,以便MySQL和其他进程可以访问其值。 对于csh和tcsh,使用setenv使shell变量用于环境: setenv MYSQL_TCP_PORT 3306 可以在命令提示符处执行设置环境变量的命令,以立即生效。但是设置仅在您注销之前存在。要使设置在每次登录时生效,请使用系统提供的接口,或将适当的一个或多个命令放在启动文件中,命令解释程序每次启动时都会读取该文件。 在Unix上,bash环境下,典型的shell启动文件为 .bashrc 或 .bash_profile,tcsh环境下是 .tcshrc。 假设您的MySQL程序已安装在 /usr

【原】shell增加定时任务

*爱你&永不变心* 提交于 2020-01-19 13:10:44
通过shell脚本增加定时任务:#CRON_FILE="/var/spool/cron/root" (centos系统) CRON_FILE="/var/spool/cron/crontabs/root"(ubantu系统) grep "cron_one_min.sh" ${CRON_FILE}|| echo "01 * * * * bash /data/server/cron/one_min.sh" >> ${CRON_FILE} 来源: https://www.cnblogs.com/HYanqing/p/12213185.html

shell脚本之比大小

落花浮王杯 提交于 2020-01-19 02:37:05
shell脚本之比大小 #!/bin/bash #author: oldboy while : do read -p '请输入任意两个整数:' num1 num2 if expr $num1 + $num2 + 1 &>/dev/null then [ $? -ne 0 ] else { echo "请输入正确的数字" exit 2 } fi [ $num1 -gt $num2 ] && echo "$num1 > $num2" [ $num1 -lt $num2 ] && echo "$num1 < $num2" [ $num1 -eq $num2 ] && echo "$num1 = $num2" done 检查脚本 [root@m01 scripts]# sh compare-size.sh 请输入任意两个整数:1 2 1 < 2 请输入任意两个整数:2 2 2 = 2 请输入任意两个整数: 29 22 29 > 22 来源: CSDN 作者: 艺妓与酒 链接: https://blog.csdn.net/xiaobaiqifei/article/details/104010306

Linux学习——菜鸟网站

限于喜欢 提交于 2020-01-19 01:55:46
https://www.runoob.com/linux/linux-install.html Linux 常用命令全拼:https://www.runoob.com/w3cnote/linux-command-full-fight.html Linux 命令大全:https://www.runoob.com/linux/linux-command-manual.html [shell]shell 中| && || () {} 用法以及shell的逻辑与或非https://www.cnblogs.com/aaronLinux/p/8340281.html 通常服务器使用 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Linux + Nginx+ MySQL + PHP)组合。 Shell 函数返回值在调用该函数后通过 $? 来获得。 注意:所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。调用函数仅使用其函数名即可。 来源: CSDN 作者: Arlison ^O^ ??? 链接: https://blog.csdn.net/arlison/article/details/103814249

Jenkins 应用

痴心易碎 提交于 2020-01-19 01:08:26
一、Jenkins Linux shell集成 新建任务 shell-freestyle-job,选择Freestyle project,点击【确定】 添加描述,This is my first shell job 添加执行shell,点击【保存】 脚本内容 #!/bin/sh user=`whoami` if [ $user == 'deploy' ] then echo "Hello, my name is $user" else echo "Sorry, I am not $user" fi ip addr cat /etc/system-release free -m df -h py_cmd=`which python` $py_cmd --version 保存后,点击【立即构建】完成后,查看控制台输出 二、Jenkins参数集成 新建任务parameter-freestyle-job,点击【确定】 添加描述,This is my parameter job 添加选项参数 This project is parameterized》Choose parameter 添加文本参数Multi-line String Parameter 添加布尔值参数Boolean Parameter 添加密码参数Password Parameter 在构建模块中,添加执行shell 脚本注释