Shell 重定向

输入和输出改变输入或输出的默认路径就叫重定向。0:标准输入1:标准输出2:标准错误标准输入特点:它是默认的输入方法,它被所有命令使用来读取输入。它用数字0表示它也被称作stdin默认的标准输入设备是键盘操作符"<"是输入重定向操作符。command < input_filename标准输出:它被命令用来写入或显示命令自身的输出它用数字1表示它也被称作stdout默认的标准输出设备是屏幕

转载 点赞0 阅读544 收藏0 评论0 2017-08-13

脚本输入处理

参数处理 使用case语句处理命令行参数当我们的脚本只接收一个命令行参数,并且会根据这个命令行参数的不同采取不同行为时,我们通常会使用case语句来处理这个命令行参数。一些启动脚本:case "$1" instart) echo "服务开启";;stop) echo "服务停止";;restart|reload) echo "服务重启";;*) e

转载 点赞0 阅读297 收藏0 评论0 2017-08-13

Shell 函数

函数的定义[function] function_name(){commands...[return int;]}function func{commands...[return int;]}2.函数的参数、变量与返回值shell有自己的命令行参数可以传递给函数name(){arg1=$1arg2=$2command on arg1}调用函数name arg1 arg2本地变量:local var

转载 点赞0 阅读454 收藏0 评论0 2017-08-12

bash 循环

for循环shell可以重复执行特定的指令,直到特定的条件被满足时为止。这重复执行的一组命令就叫做循环。每一个循环都具有如下特点:首先,循环条件中使用的变量必须是已初始化的,然后在循环中开始执行。在每一次循环开始时进行一次测试重复地执行一个代码块for循环的基本语法如下:for var in item1 item2 ... itemNdo commandsdone类c循环:for ((

转载 点赞0 阅读573 收藏0 评论0 2017-08-12

shell 的条件执行

条件测试1.test命令: 文件属性测试 字符串测试 算术测试 语法: test EXPRESSION 或 [ EXPRESSION ] 在bash中还有一个` `,它是[]的提高版本。 ` EXPRESSION `  [ 10 \> 9]  [[ 10 > 9]]2. if

转载 点赞0 阅读479 收藏0 评论0 2017-08-12

Shell 编程基础(三)

退出脚本、调试脚本、shell脚本编程风格对于一个写得很好的Shell脚本来说,当它运行完成时,应当返回一个退出状态,用于标识脚本是否成功运行。在Shell脚本中,exit N 命令可以用于提交一个退出状态码N给Shell(N必须是一个介于0-255之间的整数)set -x  set +x可以调试某一段代码 bash -x 可以调试代码-v 激活详细输出模式。bash 内部的变

转载 点赞0 阅读261 收藏0 评论0 2017-08-12

Shell编程基础(二)

shell算术运算shell可以对算术表达式求值,它可以是Shell算术扩展,也可以由内部命令let来实现。求值时使用固定宽度的整数,并且不检查溢出,但是它可以捕获除以0的情况报错。let var=5**2let var=9%2let var+=10let var*=5逻辑与&&与逻辑或||运算符。echo $(( 2 && 3))逗号运算符将两个或更多的算术运算符

转载 点赞0 阅读190 收藏0 评论0 2017-08-12

Shell编程基础(一)

Shell脚本的第一行“#!”(Shebang)脚本中的#!行(第一行)用于指示一个解释程序。#!行的语法格式类似如下所示:#! INTERPRETER [option] ...注意:INTERPRETER必须是一个程序的绝对路径。Shell中的注释“#”是注释标识符。Bash的HERE DOCUMENT特性,添加多行的注释内容。<<COMMENT comment line

转载 点赞0 阅读312 收藏0 评论0 2017-08-12

shell 命令进阶(三)

后台执行命令cron、crontab:执行计划任务cron是执行定时计划任务的守护进程。crontab命令用于创建、修改、删除和查看定时计划任务。每个用户都可以使用crontab命令创建自己的定时任务计划任务,生成的定时计划任务文件将以用户的账户名命名。定时计划任务文件由每行命令组成,每行有6个字段,由空格或制表符分隔。前5个字段表示运行任务的时间,最后一个字段是任务的命令。前5个字段的含义依次如

转载 点赞0 阅读291 收藏0 评论0 2017-08-11

shell 命令进阶(二)

检测和管理磁盘mount、unmount:挂载和卸载存储介质mount 命令用于挂载一个文件系统,或是显示已挂载的文件系统的信息。直接运行mount,将显示所有当前挂载的文件系统。-t:只显示某一指定文件系统。 mount -t ext3如要挂载某个文件系统,使用如下格式的mount命令mount [option]... [device] [directroy]device可以是块设备的全路径,或

转载 点赞0 阅读532 收藏0 评论0 2017-08-11

Shell 命令进阶(一)

文件处理和归档paste:合并文件,合并一个文件或多个文件中的行。paste [option]... [file]...-d:指定分隔符paste -d'|' file1 file2合并两个以上文件时,可以指定多个分隔符paste -d':,' file1 file2 file3-s :paste 命令可以顺序地合并文件。即它顺序地将每个文件中的所有行的内容合并为一行,由此每个文件的内容被合并为单

转载 点赞0 阅读699 收藏1 评论0 2017-08-10

常用Bash Shell 命令(五)

hostname:查看主机名直接简单地使用hostname命令,不指定任何参数,将显示当前主机名hostname newname 修改系统的主机名-F:可以从指定的文件中读取主机名。hostname -F /home/hostname.txtw、who:列出系统登录的用户W命令输出结果,第一行与uptime相同,第三行开始显示的是登录用户名、tty名称、从哪台主机登录、登录时间、空闲时间、tty上

转载 点赞0 阅读311 收藏0 评论0 2017-08-08

常用Bash Shell 命令(四)

sort :文本排序sort file 不使用任何选项,sort命令简单地将文件内容按字母顺序排序sort -u file 移除重复行sort -n file 按照数字数值的大小排序sort -n -r file 选项-r,倒序sort -t ',' -k2,2 file 按第二列的字符串顺序将文件内容排序uniq:文本去重uniq file 不带有任何选项时,它将移除重复的行并显示单一行。uni

转载 点赞0 阅读354 收藏0 评论0 2017-08-08

常用Bash Shell 命令(三)

ls -l:显示文件和目录权限chmod:修改文件和目录的权限chmod [option]...[ugoa][[+-=][rwxug]][,...] fileugoa: u指文件或目录的所有者 g指文件或用户组的成员 o指不再文件或目录的用户组中的其他用户 a指所有用户 即(ugo)+-=: +选定的权限将被添加 -选定的权限将被移除 =文件只拥有选定的权限-R:递归修改目录和文件chown、ch

转载 点赞0 阅读198 收藏0 评论0 2017-08-08

常用Bash Shell 命令(二)

touch:用于创建、变更和修改文件的时间戳。-a:只改变访问时间。-c:不创建任何文件-m:只改变修改时间-r:使用指定文件的时间替代当前时间-t:使用[[CC][YY]MMDDhhmm[ss]]替代当前时间2.mkdir:创建目录mkdir dirname-p:自动创建所有还不存在的父目录-m:设置你将要创建的目录的权限 mkdir -p -m 777 backup/old3.cp:复制文件或

转载 点赞0 阅读201 收藏0 评论0 2017-08-07