shell脚本学习指南-学习(2)】的更多相关文章

1.先看下面这个命令: $who  | wc  -l  计算当前登陆的用户个数: $who   当前登陆的有哪些用户: pipeling(   |  )可以在两个程序之间建立管道,左侧的结果成为右侧的输入. 写下的第一个shell脚本程序,user.sh,给它加权限,chmod +x user.sh,执行该程序输出用户个数和登陆用户. #!/bin/bash who | wc -l who exit # shell程序的第一行都是以  #!作为特殊标记,用来扫描后面的路径找到对应的解释器,解释后…
awk生于1977年,创始人有三个,分别为 Alfred Aho,Peter Weinberger, 和 Brian Kernighan,名称源于三个创始人的姓的首字母. 作用:处理文本文件. awk的特色是可以对行和列进行操作,输入man awk可以查看awk手册,下面将主要以例子来学习awk语言. 语法: mawk [-W option] [-F value] [-v var=value] [--] 'program text' [file ...] mawk [-W option] [-F…
终端打印 终端打印的常用命令有两个:echo和print 首先,我先介绍echo 1.echo echo这个命令接受三种形式的参数,实例如下: echo "Hello World" echo 'Hello World' echo Hello World 这三中形式的命令输出的都是同样的结果,但是,每种方法都有它相应的"副作用" 例如如下的结果: 从结果中我们可以看出,以双引号为参数的命令并不能识别标点符号,此时,如果仍使用双引号我们可以加上转义字符,并使用 -e 参…
1,echo "test" > test.txt    输出重定向到text.txt,文件不存在就创建 echo "test" >> test.txt    追加输出重定向到text.txt,文件不存在就创建 2, $# 是启动脚本时携带的参数个数 -ne 是不等于 这个语句的意思是“如果shell的启动参数不等于1个”$# 表示提供到shell脚本或者函数的参数总数: $1 表示第一个参数. -ne 表示 不等于 另外: 整数比较 -eq 等于,…
代码风格规范 开头有"蛇棒" 所谓shebang其实就是在很多脚本的第一行出现的以#!开头的注释,他指明了当我们没有指定解释器的时候默认的解释器,一般可能是下面这样: #!/bin/bash 当然,解释器有很多种,除了bash之外,我们可以用下面的命令查看本机支持的解释器: $ cat /etc/shells #/etc/shells: valid login shells /bin/sh /bin/dash /bin/bash /bin/rbash /usr/bin/screen 当…
1.I/O重定向符:<   >  >与管道   | #! /bin/bash echo -n "Enter your name!" //输出 printf "the first program is '%s %s '\n" hello word //比echo移植性更好,必须\n 才能换行 tr -d '\r' < dos-file.txt tr -d '\r' < dos-file.txt > unix-file.txt //删…
1.Bash中的READ命令 #读取n个字符存入变量 read -n number_of_chars variable_name 示例: amosli@amosli-pc:~$ read -n var heamosli@amosli-pc:~$ echo $var he #不回显的方式读取密码 read -s var 示例: amosli@amosli-pc:~$ read -s var amosli@amosli-pc:~$ echo $var pw #显示提示信息 read -p "Ente…
1.关于文件描述符和重定向: 文件描述符是与一个打开的文件或数据流相关联的整数.文件描述符0.1以及2是系统预留的. 0——stdin(标准输入) 1——stdout(标准输出) 2——stderr(标准错误) 使用“echo $?”来显示状态 amosli@amosli-pc:~/learn$ echo $? amosli@amosli-pc:~/learn$ > out.txt //没有任何输出,因为已经重定向到out.txt里面了 amosli@amosli-pc:~/learn$ cat…
sed(意为流编辑器,英语“stream editor”的缩写)是Unix/linux常见的命令行程序.sed用来把文档或字符串里面的文字经过一系列编辑命令转换为另一种格式输出,即文本替换.sed通常用来匹配一个或多个正则表达式的文本进行处理. 输入sed --help查看帮助信息: amosli@amosli-pc:~/learn/sed$ sed --help Usage: sed [OPTION]... {script-only-if-no-other-script} [input-fil…
linux中(chattr)创建不可修改文件的方法 在常见的linux扩展文件系统中(如ext2.ext3.ext4等),可以将文件设置为不可修改(immutable).某些文件属性可帮助我们将文件设置不可修改.一旦文件被设置为不可修改,任何用户包括超级用户都不能删除该文件,除非其不可修改的属性被移除.通过查看/etc/mtab文件,很容易找出所有挂载分区的文件系统类型.这个文件的第一列指定了分区设备路径(如/dev/sda5),第三列指定了文件系统类型(如ext3). 接下来让我们看看如何将文…