Linux shell 基础】的更多相关文章

Linux Shell基础(下) 目录 一.shell特殊符号cut命令 二.cut.sort.wc.uniq命令 三.tee.tr.split命令 四.简易审计系统 五.fork, exec, source三者执行shell脚本的区别 一.Shell特殊符号 字符 用途 换行符 启动命令的执行 ; 分隔命令 ( ) 通过子shell或标示函数执行命令分组 & 将命令放到后台执行 | 将前一个命令的输出发送给其后的命令(管道) > 标准输也重定向 >> 标准输出追加重定向 <…
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.bashrc和bash_profile的区别 一.shell介绍 shell是一个命令解释器,提供用户和机器之间的交互.支持特定语法,如逻辑判断,循环等.每个用户都可以有自己的shell,centos7默认的shell为bash(Bourne Again Shell). Shell的两大家族 1.Bo…
linux shell 基础 使用日志与心得 1.#!/bin/bash 第一行就出现#!/bin/bash是指此脚本使用/bin/bash来解释执行.其中,#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径.bash只是shell的一种,还有很多其它shell,如:sh,csh,ksh,tcsh,...详细介绍:http://blog.sina.com.cn/s/blog_6336857901019zyz.html 2.export PATHPATH=/bin:/sbin:/usr/…
1. 本文知识结构 2. shell 基础知识 2.1 shell 简单介绍 ​ GNU bash shell 能提供对 Linux 系统的交互式访问,一般来说,使用快捷键 Ctrl + Alt + T 即可打开 Linux Terminal . ​ /etc/passwd 文件包含所有系统用户账户列表以及每个用户的基本配置信息,从该文件中可以找到各用户使用的默认 shell 程序. ​ 大多数 Linux 发行版自带用以查找 shell 命令以及其他 GNU 工具信息的在线手册.man 命令常…
shell是核心程序kernel之外的指令解析器,是一个程序,同事是一种命令语言和程序设计语言 --shell是命令解析器,用户输入命令,它去解析. shell类型 ash,bash,ksh,csh,tcsh --cat /etc/shells 查看系统下的shell --echo $SHELL 查看当前用户运行的shell shell中可以运行子shell --在命令行键入 /bin/dash 执行子shell --在子shell中执行 exit 退出子shell Linux下默认的shell…
1.第一个Shell脚本 打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码: #!/bin/bash echo "Hello World !" "#!" 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell.echo命令用于向窗口输出文本. 运行Shell脚本有两种方法. 1.1作为可执行程序 将上面的代码保存为t…
source命令:使环境变量配置文件强制生效 source 命令会强制执行脚本中的全部命令,而忽略脚本文件的权限.该命令主要用于让重新配置的环境变量配置文件强制生效.source 命令格式如下: [root@localhost ~]# source 配置文件 或 [root@localhost ~]#.配置文件 "."就是 source 命令 环境变量配置文件 在环境变量配置文件中保存了对系统的操作环境生效的系统默认环境变量,比如 PATH.HISTSIZE.PS1.HOSTNAME…
位置参数变量 在 Linux 的命令行中,当一条命令或脚本执行时,后面可以跟多个参数,我们使用位置参数变量来表示这些参数.其中,$0 代表命令行本身,$1 代表第 1 个参数,$2 代表第 2 个参数,依次类推.当参数个数超过 10 个时,就要用大括号把这个数字括起来,例如,${10} 代表第 10 个参数,${14} 则代表第 14 个参数.举个例子: [root@localhost ~]# ls anaconda-ks.cfg install.log install.log.syslog $…
环境变量 环境变量和用户自定义变量最主要的区别在于,环境变量是全局变量,而用户自定义变量是局部变量.用户自定义变量只在当前的 Shell 中生效,而环境变量会在当前 Shell 和这个 Shell 的所有子 Shell 中生效.如果把环境变量写入相应的配置文件,那么这个环境变量就会在所有的 Shell 中永久生效.如果环境变量不写入配置文件,那么当前 Shell 一旦终止,这个环境变量就会消失. 在 Linux 中一般通过环境变量配置操作系统的环境,如提示符.查找命令的路径.用户家目录等,这些系…
概述 在 Linux 的脚本中,只要是基于 Bash语法写的Shell脚本第一行必须是"#!/bin/bash",用来声明此文件是一个脚本. 运行方式 Shell 脚本的运行主要有以下两种方法: 赋予执行权限,直接运行 这种方法是最常用的 Shell 脚本运行方法,也最为直接简单.就是赋予执行权限之后,直接运行.当然,运行时可以使用绝对路径,也可以使用相对路径.命令如下: [root@localhost hello.sh #赋予执行权限 [root@localhost sh]# /ro…
一.文件系统和安全 chmod命令 chmod命令有两种模式,一种是符号模式,用ugo执行用户,用rwx执行权限:另一种是绝对模式,用八进制不同位置的不同值来代表不同用户的不同权限. 符号模式 chmod命令的格式为 chmod [who] operator [permission] filename 其中[who]的取值可以为 u:文件属主的权限 g:用户所在组的权限 o:其他用户权限 a:所有用户权限 如果省略[who]参数,会同时为u和g设置权限,即同时为属主和用户所在组设置权限 oper…
Conditional Logic on Files # 判断文件是否存在及文件类型 -a file exists. #文件存在 -b file exists and is a block special file. #文件存在,并且是块设备 -c file exists and is a character special file. ##文件存在,并且是字符设备 -d file exists and is a directory. #文件存在,并且是目录 -e file exists (ju…
目录 一.shell脚本的基本使用 1.语言规范 2.变量 3.重定向(>,>>) 二.运算符和常用判断 1.比较运算符 2.逻辑运算符 3.常用判断 三.程序结构 1.分支(if语句) 2.循环 四.函数 shell的本质是一段应用程序,它使得用户和操作系统之间可以交互,是用户和操作系统的中介. 一.shell脚本的基本使用 1.语言规范 (1)文件以.sh结尾: (2)文件头为:#!/bin/bash (表示使用的是bash shell); (3)以#开头为注释: (4)输出: ec…
一.Shell中的变量 注:这里所说的Shell是Bash Shell,我姑且统称为Shell. Shell中的变量分为用户自定义变量.环境变量.位置参数变量.预定义变量.在Shell中,变量的默认类型都是字符串型的,如果要进行数值运算,则必须指定变量类型为数值型. (1)一些注意事项 变量命名可以由字母.下划线和数字组成,但不能以数字开头,变量名严格区分大小写. 变量用等号(=)赋值,等号左右两侧不能有空格. 变量的值如果有空格,需要使用单引号或双引号包括.可以在变量值中使用转义符"\&quo…
单引号和双引号 单引号和双引号用于变量值出现空格时将字符用引号括起来. 二者的主要区别在于, 被单引号括起来的字符都是普通字符,就算特殊字符也不再有特殊含义: 被双引号括起来的字符中,"$"."\"和反引号是拥有特殊含义的,"$"代表引用变量的值,而反引号代表引用命令. 使用单引号 如果输出时使用单引号,则$PATH原封不动地输出 [root@localhost ~]# echo '$PATH' 使用双引号 如果输出时使用双引号,则会输出变量PA…
概述 管道符:管道符使用"丨"代表.如"命令1丨命令2".表示命令 1 的正确输出作为命令 2 的操作对象.命令 1 必须有正确输出,而命令 2 必须可以处理命令 1 的输出结果. grep命令:在文件中提取和匹配符合条件的字符串行. 管道符 1. 在使用"||"命令査看/etc/ 目录时显示的内容非常多,只能看到最后的内容,而不能看到前面输出的内容,此时可以用管道符将输出的结果作为more的操作对象,让more 命令分屏显示文件内容,命令如下:…
概述 在 Linux 中输入设备指的是键盘,输出设备指的是显示器.在 Linux 中,所有的内容都是文件,计算机硬件也是文件,标准输入设备(键盘)和标准输出设备(显示器)也是文件.这些设备的设备文件名如下表所示. 设 备 设备文件名 文件描述符 类 型 键盘 /dev/stdin 0 标准输入 显示器 /dev/stdout 1 标准输出 显示器 /dev/stderr 2 标准错误输出 Linux 是使用设备文件名来表示硬件的(比如 /dev/sda1 就代表第一块 SATA 硬盘的第一个主分…
概述  shell中常见命令history 历史纪录命令:history 命令格式如下: [root@localhost ~]# history [选项] [历史命令保存文件] -c:清空历史命令: -w:把内存中的命令直接写入 ~/.bash_history 文件中 查询系统中当前用户的所有历史命令 [root@localhost ~]# history ls cd / ls poweroff -h now poweroff h now poweroff whereis ls …省略部分输出……
概述 shell中常见的命令echo. 输出命令:echo echo命令的输出内容如果没有特殊含义,则将原内容输出到屏幕:如果输出内容有特殊含义,则输出打印其含义. 命令格式如下: [root@localhost ~]# echo [选项] [输出内容] 选项: -e:支持反斜线控制的字符转换 -n:取消输出后行末的换行符号(内容输出后不换行) 输出内容打印到屏幕上 [root@localhost ~]# echo "hello world " hello world 取消输出后行末的…
1.本文知识结构 2.文件的查询与检索 2.1. cd 目录切换 找到文件/目录位置:cd 切换到上一个工作目录: cd - 切换到home目录: cd or cd ~ 显示当前路径: pwd 更改当前工作路径为path: $cd path 2.2. locate 查找目录及文件 find 实时查找 locate 为文件系统建立索引数据库,如果有文件更新,需要定期执行更新命令来更新索引库,在查找文件之前要先更新数据库 # 搜寻文件或目录: $find ./ -name "core*"…
一.sed命令 sed是一种强大的流式编辑器 (stream editor for filtering and transforming text),它能够完美的使用正则表达式,逐行处理文本并把结果显示到屏幕上.sed的强项是替换文本中的特定字符,而写shell有个步骤就是从一段文本中截取一段字符进行处理,所以熟练掌握sed命令是写shell脚本的基本技能. 用法:sed [选项]... {脚本(如果没有其他脚本)} [输入文件] sed [options] 'command' file(s)…
du -h  #查询磁盘文件大小和列表 df  -h   # 查询服务器磁盘使用情况 top/free   # 查询服务器内存,cpu等资源使用情况 iptables    # 防火墙相关的命令 vi  /etc/sysconfig/iptables  #  编辑防火墙配置 关于防火墙配置可参考:http://blog.chinaunix.net/uid-26495963-id-3279216.html # 统计,查找,用户,群组,授权,分析,搜索命令 curl  members.3322.or…
while循环 语法1: while [ 条件 ] do 命令序列 done 语法2: while read -r line do 命令序列 done (切记while和左中括号一定要有空格) 例子 #!/bin/bash j= SUM= ] do SUM=$((SUM+j)) j=$[j+] done echo $SUM if判断语句 语法1: if 条件 then 命令序列 fi 语法2: if 条件 then 条件序列 else 条件序列 fi 语法3: if 条件 then 条件序列 e…
read命令 read 命令用于接收标准输入(键盘)的输入,或者其他文件描述符的输入.得到输入后,read 命令将数据放入一个标准变量中,read 命令格式如下: [root@localhost ~]# read [选项] [变量名] 选项: -p "提示信息":在等待read输入时,输出提示信息: -t 秒数:read命令会一直等待用户输入,使用此选项可以指定等待时间: -n 字符数:read命令只接收指定的字符数就会执行: -s: 隐藏输入的数据,适用于机密信息的输入: 变量名:…
通配符 在 Bash 中,如果需要模糊匹配文件名或目录名,就要用到通配符.下面为常用的通配符. 表 1 通配符 通配符 作 用 ? 匹配一个任意字符 * 匹配 0 个或任意多个任意字符,也就是可以匹配任何内容 [] 匹配中括号中任意一个字符.例如,[abc] 代表一定匹配一个字符,或者是 a,或者是 b,或 者是 c [-] 匹配中括号中任意一个字符,- 代表一个范围.例如,[a-z] 代表匹配一个小写字母 [^] 逻辑非,表示匹配不是中括号内的一个字符.例如,[^0-9] 代表匹配一个不是数字…
概述 在 Bash 中,如果需要让多条命令按顺序执行,则有这样方法,如表 1 所示. 多命令执行符 格 式 作 用 : 命令1 ; 命令2 多条命令顺序执行,命令之间没有任何逻辑关系 && 命令1 && 命令2 如果命令1正确执行($?=0),则命令2才会执行如果命令1执行不正确($?≠0),则命令2不会执行 II 命令1 || 命令2 如果命令1执行不正确($?≠0),则命令2才会执行如果命令1正确执行($?=0),则命令2不会执行 ";"多命令顺序执…
详细介绍Linux shell脚本基础学习(五) Linux shell脚本基础前面我们在介绍Linux shell脚本的控制流程时,还有一部分内容没讲就是有关here document的内容这里继续. Linux shell脚本基础已经被分成好几个部分了,这里对控制流程的内容也就马上讲完了,这是最后一部分关于here document,这里举例稍微有点复杂,我们慢慢来分析这个复杂Linux shell脚本. 6. Here documents 当要将几行文字传递给一个命令时,here docu…
20171123 Linux shell 基础学习笔记1. shell 的开始 一般是 #!/bin/bash 通过 #! 来唯一指定使用的shell路径 其他的 # 都表示注释.2. shell 的变量 定义变量直接用 variablename= value 就可以 其中变量名与等号之间没有空格. 使用变量的时候 是 ${vairablename} 的方式进行使用 大括号可以有可以没有,但是建议有. 可以使用 for file in `ls /etc/` 的方式来循环取得文件名. 使用do d…
目录 Linux Shell基础 开始Shell编程 代码 示例代码查看:https://github.com/Furzoom/demo-C/tree/master/src/shell…
1.什么是shell?Shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的是Bash. 2.shell的分类(1)bash bash shell 是 Bourne shell 的一个免费版本,它是最早的 Unix shell,包括许多附加的特点.Bash 有可编辑的命令行,可以回查历史命令,支持 tab 键补齐以使用户避免输入长的文件名.(2)csh C shell 使用的是“类C”语法,借鉴了 Bourne shell 的许多特点,只是内部 shell…