批处理文件和脚本程序(shell脚本攻略笔记)

原创
2013/04/22 11:23
阅读数 915

批处理文件

批处理文件时扩展名为.bat或者.cmd的文本文件,包含一条或多条命令,由DOS或Window内嵌的命令解释起来解释运行。批处理文件是无格式的文本文件。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统会自动调用Cmd.exe按照文件中出现的顺序来逐个运行它们。使用批处理可以简化日常或重复性任务。

常用的命令

echo 、 @、 call、 rem 、pause、goto 、set 是批处理文件最长用的几个命令。

脚本程序

脚本程序是批处理文件的延伸,是一种纯文本保存的程序。一般来说,是确定的一系列控制计算机进行运行操作动作的组合,在其中可以实现一定的逻辑分支等。脚本程序相对一般程序来说比较接近自然语言,可以不经编译而解释执行,利用快速开发或一些轻量的控制。

脚本(Script)即含有bind和alias等命令的集合,你可以把这个集合存为一个独立的文件然后在需要时执行以方便你在CS中的使用。

脚本程序可以存为后缀名为.cfg的文件放在cstrike文件夹下,执行时在控制台输入:exec (脚本文件名).cfg 即可。


文件描述符

内核利用文件描述符来访问文件。文件描述符是一个与打开的文件或数据流相关的非负整数。

echo "this is first test " > temp.txt 

echo "this second test " >> temp.txt
> 和 >> 不同,> 是清空再重定向,而>>是直接追加到文件的尾部。

/dev/null 是一个特殊的设备文件,这个文件接收的数据都会被丢弃。

tee命令,一方面将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。 

tee 本来是将文件覆盖,但是提供了一个 -a 的选项,可以追加内容。

/dev/stdin 可以作为输入文件名来使用stdin 

/dev/stdout和/dev/stderr一样。 

自定义文件描述符

exec 命令创建自定义文件描述符。分为三种: 

只读模式: <  

截断模式: >

追加模式: >> 

echo this is a test > input.txt 
exec 3<input.txt #使用文件描述符3打开并读取文件
cat <&3 #使用文件描述符使用文件


两种检查命令执行所花的时间

#!/bin/bash
# filename: time_take.sh

start=$(date +%s)
commands;
statements;

end=$(date +%s)
difference=$((end - start))
echo Time taken to execute commands is $difference secons .

还可以使用timescriptpath来得到执行脚本所用的时间。

参考百度百科

展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部