建站相关

shell的基本概念及介绍

2016-09-08  本文已影响125人  野原浩二

Shell的基础概念

1.shell是一个命令解释器,处于内核和用户之间,负责把用
2.户的指令传递给内核并且把执行结果回馈给用户
3.shell是一个用C语言编写的程序,它是用户使用Linux的桥梁,也可以作为一门强大的编程语言
4.shell常见的几种类型有sh、csh、bash、zsh
5.shell的功能在于外部命令的使用
6.shell的内部数据处理方面,侧重文本(或者说字符串,字符流)处理,而对运算和其他基本数据结构的原生较弱(例如常用的array、set、map等等)功能目标在于实现命令自动化
缺点:shell在实现命令自动化的同时,需要依赖其他程序才能完成大部分的工作
优点:简洁的脚本语言标记方式,比C语言编写的程序执行更快、效率更高

学会shell编程 可以更快捷的管理服务器
bash(Bourne Again Shell)是Linux标准默认的shell,
在Linux中以#!/bin/bash开头的文件内容是基于bash的shell编程文件

Shell编程实例#!/bin/bash

设置mongodb数据库的存储路径

1.cd /home/liwei/mongodb/bin
./mongod --dbpath=../liwei_db
计算在执行指令的时候是一条一条执行的。
依次操作的目的是:
1.进入mongodb/bin目录
2.启动mongodb数据
3.保存为m.sh
最后达到启动mongodb数据库的功能
如果我们需要执行上百行指令,单独执行的话我们要重复操作,那么把他们一次写入一个shell,这样来执行的时候就可以很方便了,执行shell的过程中,我们可以通过>或者>>来记录下一些节点的结果报告
2.将lamp目录里面所有的压缩包批量解压出来,这样我们可以看出ls的结果集可以拿出来参与下一个指令的执行
比如这么一个shell:

!/bin/bash

cd /lamp
ls *.tar.gz > ls.list
for TAR in cat ls.list
do
tar -zxf $TAR
done

3.将某个文件夹下所有的文件名字里的大写字母改成小写字母:

!/bin/bash

for file in ls | grep '[A-Z]'
do
str=echo $file|tr 'A-Z' 'a-z'
mv $file $str

4.有时候我们在管理文件的时候需要将空文件、没用的文件全部删掉
for filename in ls
do
if test -d $filename
then b=0
else
a=$(ls -l $filename | awk '{ print $5 }')
if test $a -eq 0
then rm $filename
fi
fi
done

上一篇 下一篇

猜你喜欢

热点阅读