Shell脚本笔记一些零碎的基础知识

Posted Shadowplay

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本笔记一些零碎的基础知识相关的知识,希望对你有一定的参考价值。

一些零碎的基础知识

一、认识Shell脚本

一)相关概念

Shell是一种命令解释器,作用是按次序执行(遇到子脚本,先执行子脚本的命令)用户输入的命令和程序。

Shell脚本语言是弱类型语言,与其他脚本语言相比的优势是可以处理偏操作系统底层的业务。

查看系统默认Shell:

#方法一:
echo $SHELL
#方法二:
grep root /etc/passwd

二)开发规范

1)脚本第一行指定解释器

#!/bin/bash 

2)开头添加版本、版权等信息

3)脚本中尽量不要用中文

4)扩展名为.sh

5)脚本应放在固定路径下

三)执行方法

1)bash script-name或者sh script-name: 脚本没有x权限或者脚本开头没有指定解释器时,可用此方法,此方法也是常见的方法。

2)path/script-name:当前路径下执行脚本,脚本要有x权限。

3)source script-name 或者 . script-name:在当前shell中直接运行脚本(其他方式会开启新的shell),因此可将该脚本中的变量或者函数传递到当前shell中。

四)重定向和管道

1)输出重定向

将命令的输出发送到一个文件中(每次都会新创建文件):

ls -al > list.txt

如果不想每次都新建文件,可以追加:

date >> list.txt

2)输入重定向

将文件内容发送给命令,当做相关参数:

ls -al < in.txt

内联输入重定向:

无需文件中的数据,将标记中的数据重定向给命令,其语法格式为:

command << MARKER
data
MARKER

3)管道

使用管道将一个命令的输出当做另一个命令的输入,其语法格式为:

command1 | command2

五)其他

执行多个命令:

放在同一行用分号隔开

ls ; date ; who

命令替换:

从命令输出中提取信息,并将其赋值给变量。

方法一:

d=$(date)

方法二:

d=`date`

 

以上是关于Shell脚本笔记一些零碎的基础知识的主要内容,如果未能解决你的问题,请参考以下文章

学习知识零碎笔记

Python初学者零碎基础笔记

Linux bash基础特性二

iOS开发中的零碎知识点笔记 韩俊强的博客

linux学习笔记--工程师技术:shell脚本基础

练习脚本和一些可用脚本(更新中...)