Linux基础第二篇

Linux基础第二篇

元字符

元字符定义:

指对当前shell具有特殊含义的字符

常用元字符:

* : 代表0-n个任意字符  例如:ls j* 显示所有以j开头的文件或目录名字
? :代表任意一个字符   例如:ls j? 以j开头 后面有一位的文件或目录
; : 多个命令的分隔符    例如:cd;ls 先切换再显示列表;
    date;cal;pwd 查看当前日期、查看当前日历和显示当前工作路径的绝对路径名
[] : 从[]指定的集合或者范围中选择一个字符
     例如: [a-c]:aAbBc
            [abc]:abc  
            ls[a-c]*:查找以包含aAbBc字母开头的文件或目录
> : 重定向命令的输出到文件而不是屏幕(覆盖源文件)
	例如:cal 10 2004 > a.txt 将2004年10月份的日历输出到a.txt文件中
>> : 将命令的输出追加到一个已经存在的文件
	 例如:cal 10 2004 >> a.txt 将2004年10月份的日历追加到a.txt文件中 
| : 将前一个命令的输出作为下一个命令的输入
    例如:ls -l /etc | more 使用more命令查看/etc目录下的内容    

Text Viewer

  1. cat
    语法:cat filename(s)
    作用:(1)将文本文件的内容一次性显示在屏幕上
    (2)常用来将两个或者更多的文件整合成一个文件
    例如cat a.txt: 将a.txt文件中的内容显示到屏幕上
    cat a.txt b.txt > large.txt 将a.txt以及b.txt中的内容输出到large.txt
    清空文件:
    /dev/null 这个文件是linux中的黑洞,无论向这个文件中输入什么文件还是空
    比如:cal > /dev/null 依旧是空

  2. more
    语法:more filenames
    作用:一次一屏幕的显示文本文件内容
    指令:
    space bar : 一次滚动一屏幕
    return : 一次向下一行。
    b : 一次回退一屏幕
    f : 一次向前一屏幕
    h/? : 显示帮助信息文档
    q : 退出,回到shell终端
    /String : 向前查找字符串
    n : 查找下一个字符串

vi介绍

作用:满屏文本编辑器。

vi编辑器的三种模式:

  1. 底行模式
  2. 命令行模式
  3. 输入模式

模式转换:
(1)命令行模式-----》输入模式:
插入:
a: 在光标所在位置之后插入
A: 在光标所在行的行尾插入
i: 在光标所在位置插入
I: 在光标所在行的行首插入
o: 在光标所在行的下一行插入
O: 在光标所在行之上插入

(2)输入模式------》命令行模式
Esc

(3)命令行模式-----》底行模式
ESC+:or / or ?

打开vi

vi : 打开一个新的文件,退出或者保存时命名
vi filename : 打开或者创建一个新的文件

保存文件

底行模式下:
:w newFile : 存成新文件
:w : 存盘

退出vi

底行模式下:
:wq : 保存退出
:q! : 强行退出不存盘

删除文本

x:  删除一个字符
s:  删除当前字符,并进入输入模式
dw: 删除当前词
ndw: 删除n个词
dd:  删除当前行
ndd: 删除之后的n行
:5,10d: 删除5-10行之间的内容

修改文本

r : 替换一个字符,
cw :替换一个单词,	进入输入模式
cc :替换一行,	   	进入输入模式
C  :替换从光标至行尾。	进入输入模式

复制和粘贴文本

yw	:  拷贝词
yy	: 拷贝行
p	: 当前行下粘贴
:1,2co3:  拷贝行1,行2在行3之后
:4,5m6:	  移动行4,行5在行6之后。

高级功能

~	: 改变大小写
J	: 把当前行和下一行连起来
u	: 废除刚才的编辑操作
:set nu	: 显示行标
:21 	     光标停在指定行
21G	     光标停在指定行
/str	     从当前行往下查找
?str	     从当前行往上查找
n	     继续查找
:r file    在光标所在位置插入另一个文件
:1,$s/old/new/g	替换文本(%s/old/new/g)

配置文件

定义

系统配置文件用来记录一些系统运行时需要的相关配置信息,环境变量信息等。

种类

  1. 系统级别:/etc/profile
    一般存放在/etc目录下
    例如:
    (1)/etc/enviroment 是系统的环境变量。
    (2)/etc/profile: 是所有用户的环境变量。当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置。
    (3)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
  2. 用户级别:~/.bashrc
    一般存在用户家目录之下
    例如:
    (1)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
    (2)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
    (3) ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是”父子”关系。
    (4)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

内容

  1. 设置默认的创建权限
  2. 设置环境变量
  3. 设置默认终端提示符
  4. 设置默认命令行命令的路径
  5. 设置客户自定义命令

相关指令

  1. 设置环境变量
    (1)在Shell中定义临时变量:
    varName=value
    (2)定义用户级别的环境变量
    在用户级别的配置文件中:常用的~/.bashrc
    export varName=value
    让文件执行:source ~/.bashrc或者. ~/.bashrc
    (3)定义系统级别的环境变量
    在系统级别的配置文件中:常用的/etc/profile
    export varName=value

  2. 读取变量的值:
    echo $varName

  3. path变量:
    path环境变量用来指明操作系统下常用命令的搜索路径

  4. which
    语法: which commandName
    作用:在系统环境变量中查找指定命令的路径名
    which是根据使用者所配置的 PATH 变量内的目录去搜寻可运行文档的!所以,不同的 PATH 配置内容所找到的命令可能不一样!

  5. whereis
    语法:whereis commandName
    作用:whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis时,会从数据库中查找数据,而不是通过遍历硬盘来查找,效率自然会很高。但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。

  6. history
    显示命令行历史记录
    history 10 显示最近的10条记录
    !n 执行第n条历史命令
    !! 执行刚刚执行过的历史命令

  7. alias
    语法:alias 别名=命令
    作用:用来给一个长的命令,起一个简单的别名
    例如:
    给history起个别名h
    alias h=history
    查看所有的别名
    alias
    取消绑定
    unalias h

  8. 用户终端提示符
    变量设置:PS1=‘value’
    value中可以包含:

    \d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
    \H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
    \h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
    \t :显示时间为24小时格式,如:HH:MM:SS
    \T :显示时间为12小时格式
    \A :显示时间为24小时格式:HH:MM
    \u :当前用户的账号名称
    \v :BASH的版本信息
    \w :完整的工作目录名称。家目录会以 ~代替
    \W :利用basename取得工作目录名称,所以只会列出最后一个目录
    \# :下达的第几个命令
    \$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
    
  9. umask
    跟系统创建的目录和文件的默认权限相关。
    这个值决定了当前用户所创建文件和目录的默认权限
    目录权限: 777 - umask
    文件权限: 777 - umask - 所有人的执行权限

linux中grep命令的用法

作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的。
首先谈一下grep命令的常用格式为:grep [选项] ”模式“ [文件]
grep家族总共有三个:grep,egrep,fgrep。

常用选项:
   -E :开启扩展(Extend)的正则表达式。
  -i :忽略大小写(ignore case)。
  -v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
  -n :显示行号
  -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
  -c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
  -o :只显示被模式匹配到的字符串。
  --color :将匹配到的内容以颜色高亮显示。
  -A n:显示匹配到的字符串所在的行及其后n行,after
  -B n:显示匹配到的字符串所在的行及其前n行,before
  -C n:显示匹配到的字符串所在的行及其前后各n行,context

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值