Linux基础(八)

一、shell

  shell一般代表两个层面的意思,一个是命令解释器,比如BASH,另外一个就是shell脚本。Python也是一种解释语言。

1.   Linux中命令是按照下面的优先级执行的

 ==> alias                                                                              #别名,就是自己命名一个命令,常用来简化长命令
   ==> Compound Commands                                               #如if ,while ,for命令
    ==> function                                                                #函数
      ==> build_in                                                           #内部命令
        ==> hash                    #hash表,用来缓存命令,缓存的是PATH路径
          ==> $PATH                                                  #当别名和内部命令中都找不到时,就寻找$PATH
            ==> error: command not found

2.查看PATH:echo $PATH

 如果临时添加PATH:export PATH=/usr/local/nginx/sbin:$PATH

如果想永久添加,就要把路径写到 /etc/bashrc中

3.切换用户时(shell方式),会默认执行几个文件,执行顺序为

  /etc/profile

  .bash_profile

  .bashrc

  /etc/bashrc

其中/etc/profile和/etc/bashrc 为系统级别,.bash_profile 和.bashrc为用户级别

用非shell方式切换用户时,只会执行.bashrc和/etc/bashrc两个文件。

二、通配符

1.``反引号,取命令执行的结果,但更常用的是$()

2.~代表家目录

3.! 取反,历史命令调用,匹配最近一次历史命令

[email protected]无特殊含义,常用来分割字符

5.#注释符

6.$变量取值

 $()同``

 ${}变量名的范围

 $[]整数运算

 echo $?查看上次命令是否执行成功

7.%取模

8.^取反,和!类似

9.&把程序放到后台执行,如firefox &

 &&逻辑与

10.*匹任意长度字符串

  乘运算

11.()在当前终端的子进程中运行

12._下划线,无特殊意义,一般命名时用

  -减号,区间,运算

13.|管道符

14.\转义

15.:空命令

16.>覆盖

  >>追加

17.?任一字符

18.‘’硬引用,单引号内的字符无特殊意义,不需要转义

  “”软引用,双引号内的特殊字符需转义

三、正则表达式

  正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法。或者说:正则就是用来描述一类事物的规则。

1.   常用grep命令+正则表达式

grep

  -n   显示行号    grep -n ‘root‘ /etc/passwd

  -o 只显示匹配内容

  -q 判断命令是否执行成功,需要使用$?来显示是否成功

  -l  如果匹配成功,则将文件名打印出来,常与rl一起用,递归的匹配,grep -rl ‘root‘ /etc/passwd

  -An 显示匹配到的行及其后n行

  -Bn 显示匹配到的行及其前n行

  -Cn 显示匹配到的行机器前后n行

  -E    扩展的grep,或者直接写成egrep

  -i  忽略大小写的过滤

  -v    取反,显示匹配到的信息之外的所有

  -w  匹配单词

  -c   显示有几行包含有关键字

2.  正则表达式

  ^ 行首 如:grep ‘^root‘ /etc/passwd    是匹配所有以root开头的行

  $  行尾

  .   除了换行符之外的任意单个字符

  *  左边的字符出现零次或多次

  ?  左边字符出现零次或1次

  +   左边字符出现1次或多次

  {n}  花括号左边字符出现n次

  .* 代表任意字符

  [] 字符组内的任一字符,与.的区别是[]可以自己指定范围,如[0-9][a-Z][a-z]

  |  或,|左边匹配成功则不匹配右边,只有左边匹配不成功时才会匹配右边

示例:新建文件1.TXT,内容为   abominable

               abominate

               anomie

               atomize

编写正则表达式将它们匹配出来

[[email protected] ~]# cat test.txt
bominable
abominate
anomie
atomize

[[email protected] ~]# egrep ‘a?[a-z]omi(na)?[a-z]?[a-z]?e‘ test.txt
bominable
abominate
anomie
atomize
时间: 2024-08-27 17:22:54

Linux基础(八)的相关文章

linux基础八

1.文本处理类命令     wc [option] file         -l:统计行数         -c:统计字节数         -w:统计单词数              tr 转换或删除字符         tr '集合1' '集合2' 转换字符         tr -d '字符集合'   删除字符              cut         -d 字符:指定分隔符         -f#:指定要显示的字段     单个数字表示一个字段,逗号分隔的多个数字表示多个离散字

Linux基础知识第八讲,系统相关操作命令

目录 Linux基础知识第八讲,系统相关操作命令 一丶简介命令 2.磁盘信息查看. 3.系统进程 Linux基础知识第八讲,系统相关操作命令 一丶简介命令 时间和日期 date cal 磁盘和目录空间 df du 进程信息 ps top kill 1.时间和日期命令学习. 序号 命令 作用 01 date 查看系统时间 02 cal calendar 查看日历,-y 选项可以查看一年的日历 如下: 2.磁盘信息查看. 序号 命令 作用 01 df -h disk free 显示磁盘剩余空间 02

Linux基础知识(2)

Linux基础知识: 一.程序管理: (1)程序的组成部分: (2)二进制程序: (3)配置文件: (4)库文件: (5)帮助文件: 二.程序包管理器: X: (1)程序的组成文件打包成一个或有限几个文件: (2)安装: (3)卸载: (4)查询: 三.安装Linux: 虚拟机安装Linux系统 需要设置计算机的CPU, 内存, IO等 四.虚拟化软件程序: vmwareworkstation和virtualbox虚拟机都可以安装系统 五.CentOS的镜像站点: http://mirrors.

linux基础知识---用户

用户和组 一.用户和组的概念 随着计算机对多用户需求越来越多,才引入了用户和组的概念.所谓的用户就是操作系统用来标识登陆系统的.就是用户和组是实现计算机资源分配的核心要素.组:是具有相同计算机资源(主要指权限)用户的一个集合. 在计算机内核中,用户和组都是一个数字,我们称之为UID和GID.UID和GID在系统中具有唯一性.实现这个过程进行名称解析才能完成,在Linux系统中使用glib库中的系统调用来完成. 二.用户识别 识别用户通过3A(Authentication,Authorizatio

linux基础学习笔记——操作大全

作者:liaoyi 更新时间:2014-6-2 ****************基本操作***************** 关机 shutdown -h now    root用户               init 0              root用户halt      root+一般用户poweroff 重启shutdown -r now    root用户init6     root用户reboot            root+一般用户 注意:1.shutdown 比较灵活,可

(赵小明RHCE笔记)linux基础之三 用户、组及权限

一.user1.每个用户将指派唯一用户ID(UID)  root的ID为0  普通用户ID从500开始(0-500系统使用)2.用户名和用户ID存在 /etc/passwd中3.当用户登陆时系统自动为其分配一个用户家目录4.用户无法读.写.执行其他用的文件二.changing file ownership1.only root can change a file's owner2.only root or the owner can change a file's group3.ownershi

linux基础part3

linux基础 一.linux基本命令归档命令. 1.归档的定义:归档就是把许多文件或目录打包成一个文件. 2.tar命令格式:tar  [参数-cxtzjvfpPN]  打包文件名 文件或目录路径 参数: -c :建立一个压缩文件的参数指令(create 的意思): -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为 不可能同时压缩与解压缩. -z :是否同时具有 gzip 的属性?亦即是否需

Linux基础部分: 历史 现在 未来

最初的电脑:卡片打孔 Multics计划: 贝尔+麻省理工+通用电器(目标300人终端) 1969 贝尔实验室 退出该计划 Ken Thompson 与Dennis M. Ritchie : 多用户多任务操作系统(一个有趣的故事) Multics - 星际旅行-PDP7-B语言-C语言改写 http://www.ruanyifeng.com/blog/2010/03/unix_copyright_history.html UNIX版权历史   Novell 2.Linux : 1984年,负责教

Linux基础: 安装CentOS 6.5

1. 安装需求 评估自己的服务器     原则: 根据服务器的用途来配置硬件,Linux自身对硬件的需求非常的小.     要干嘛?  负载均衡,缓存服务器,Web前端,应用程序,特殊应用,公共服务,数据库 多少人用?并发 存多少数据,存多久 是否要备份和业务交互(东西向预留网卡)     2. Linux里,一切皆是文件     理解目录结构 3. 获得版本 国内镜像 http://mirrors.163.com/  或国外网站 http://mirrors.163.com/centos/6.

老男孩26期运维班linux基础知识大比拼即将开始

老男孩26期运维班linux基础知识大比拼 1 比赛说明 比赛时间:2015年11月12日下午15点 比赛地点:老男孩教育教室二 比赛人员:老男孩教育26期全体同学 奖项:团体奖(按组奖励共1-9组): 一等奖奖励300元人民币或每人老男孩老师新书一本和老师合影签名. 二等奖奖励200元人民币 三等奖奖励100元人民币 个人奖:3名,赠老男孩新书一本 惩罚:没有得奖的组,或者组内无人得奖的组,罚100元或派选代表表演一个节目(唱歌或其它) 比赛规则当场宣布: 主评委:老男孩老师,张导 辅助评委: