shell入门
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell入门相关的知识,希望对你有一定的参考价值。
vi /vim编辑器
命令基础(100多个)
网络服务(基础)nfs、sync、 inotify、 lamp、 sersync、 ssh key批量分发管理
#!/bin/bash
#author by xiaojiang
#print hello world
echo ‘hello world\!‘
变量 赋值
#!/bin/bash
#define path variables
#AUTH XIAOJAING 2016
A=123
echo "$A"
echo $UID
echo $PWD
echo "?"
echo "#"
echo "*"
#!/bin/bash
#by authors xj 2016
echo -e "\033[32mPlease select Menu follow:\033[1m"
echo "1)安装apache服务器"
echo "2)安装mysql服务器"
echo "3)安装php服务器"
echo "4)配置LAMP服务器"
echo "------------------------"
shell 编程if条件语句 if for while case
if 条件判断语句
if (表达式) #
语句一
else
语句二
fi
eg:
#!/bin/bash
NUM1=100
NUM2=200
if(($Num1>$NUM2)); then
echo "this $NUM1 greater $NUM2 !"
else
echo "this $NUM1 little $NUM2 !"
fi
逻辑运算符
-f 判断文件是否存在 if [-f filename]
-d 判断目录是否存在 if [-d dir]
-eg 等于 应用于:整型比较
-ne 不等于 应用于:整型比较
-lt 小于 应用于:整型比较
-gt 大于 应用于:整型比较
-le 小于等于 应用于:整型比较
-ge 大于等于 应用于:整型比较
-a 双方都成立 (and) 逻辑表达式 -a 逻辑表达式
-o 单方成立 (or) 逻辑表达式 -o 逻辑表达式
-z 空字符串
判断目录是否存在
eg1:
#!/bin/bash
#auth if test
#by authors xj 2016
if [ ! -d /tmp/20161210 ];then
mkdir -p /tmp/20161210
echo -4 "\033[032mThis dir is create successful!\033[0m"
else
echo "\033[32mThis dir is exist,please exit.\033[0m"
fi
eg2:
#!/bin/bash
FILES=/tmp/test.txt
if [ ! -f $FILES];then
echo "ok">>$FILES
else
echo -e "033[32m---------------\033[1m"
cat $FILES
fi
多个条件测试判断
eg3:
#!/bin/bash
scores=80
if [[ $scores -gt 85 ]];then
echo "very good!";
elif [[ $scores -gt 75 ]];then
echo "good!";
elif [[ $scores -gt 65 ]];then
echo "pass!";
else
echo "no pass!"
fi
if条件语句写mysql备份脚本
#!bin/bash
#backup Mysql
#autor xj 20161210
#define Path 定义变量
#必须使用root $UID为系统变量
BAK_DIR=/data/backup/`date +%Y%m%d`
MYSQLDB=discuz
MYSQLUSR=backup
MYSQLPW=123456
MYSQLCMD=/usr/bin/mysqldump
if [$UID -ne 0];then
echo "must to be use root for exec shell"
exit
if [ ! -d $BAK_DIR];then
mkdir -p $BAK_DIR
echo "\033[32mThe $BAK_DIR create successful!\033[0m"
else
echo "This $BAK_DIR is exists---"
fi
MYSQL backup command
mysqldump -ubackup -p123456 -d discus>$BAK_DIR/$MYSQLDB.sql
if [$? -eq 0 ];then
echo "\033[32mThe Mysql Backup $MYSQLDB SUCCESSFULLY!\033[0m"
else
echo "\033[32mThe Mysql Backup $MYSQLDB fAILED,please checked.\033[0m"
if 条件综合shell 实战脚本编写LAMP
//一键源码安装LAMP
1)安装apache服务器
2)安装Mysql服务器
3)安装PHP服务器
4)配置LAMP服务器并启动服务
//
1.apach 安装部署
下载http-2.2.27.tar.gz 下载url 解压 进入安装目录,configure ;make ;make install
2.mysql服务器的安装
下载mysql-5.5.20.tar.gz 下载url 解压 进入安装目录 configure ;make ;make install
3.php服务器的安装
下载php-8.3.8.tar.gz 下载url 解压 进入安装目录 configure ;make ;make install
4.lamp架构的整合和服务启动
/usr/local/apache2/bin/apachectl2 start
vi htdocs/index.php
<?php
phpinfo();
?>
//
#/bin/bash
# auto make install lamp
#by xj
#httpd define path variables
H_FILES=http-2.2.27.tar.bz2
H_FILES_DIR=httpd-2.2.27
H_URL=http://mirros.cnnic.cn/apache/httpd/
H_PREFIX=/usr/local/apache2/
if [ -z "$1" ];then
echo -e "\033[32mPlease select Menu follow:\033[0m"
echo -e "\033[32m1)编译安装apache服务器\033[1m"
echo "2)编译安装Mysql服务器"
echo "3)编译安装PHP服务器"
echo "4)配置LAMP服务器"
echo -e "\033[31musage:{/bin/bash $0 1|2|3|4|help}\033[0m"
exit
fi
if [ "$1" eq "1" ];then
wget -c $H_URL/H_FILES &&tar -jxvf $H_FILES && cd H_FILES_DIR;./configure --prefix=$H_PREFIX
if [ $? -eq 0 ];then
make && make install
echo -e "\033[32mThe H_FILES_DIR Server Install successful!\033[0m"
else
echo -e "\033[32mThe H_FILES_DIR Server Install Failed!,please checked\033[0m"
exit
fi
fi
本文出自 “独家视角” 博客,请务必保留此出处http://molujiang.blog.51cto.com/9742572/1881466
以上是关于shell入门的主要内容,如果未能解决你的问题,请参考以下文章
linux shell 脚本 入门到实战详解[⭐建议收藏!!⭐]
linux shell 脚本 入门到实战详解[⭐建议收藏!!⭐]