linux学习笔记-第十一课-shell基础

1、历史命令(history↓、↑、!

history的默认值是1000,该值在/etc/profile中指定

命令history,用来查询最近命令历史记录;

使用方向键(↑)可以查询上一个命令;

使用方向键(↓)可以查询下一个命令;

感叹号(!!)可以重新执行最近执行的命令;

在(!)后面输入要查询命令的首字符或者字符串,可以搜出符合该字符串的最近的命令;

(!n)代表执行history命令中标记的第n条命令(注:n也可以为负数,如!-2代表执行倒数第二个命令);

(!#)可以执行2次命令



2、键盘上的(tab)可以进行命令或者文件路径的补全



3、别名(alias)

别名用户自定义的指令缩写形式

alias用来查询所有的别名

创建别名:

格式:alias [别名]=‘需要执行的命令‘

例如:alias ls=‘ls --color=auto --time-stye=long-iso‘

删除别名:

格式:unalias 别名



4、通配符(元字符)

(.)   匹配一个字符,包括空格

(?)   匹配一个字符

(*)   匹配0个以上的字符

([])   匹配中括号内任意的一个字符

(\)    脱义符,用字符本身的意思进行解析

(|)    管道符,将管道前面的命令输出的结果,传给管道后面的命令作为参数



5、I/O重定向

>  用于输出重定向

>>  用于追加输出重定向

            标准I/O                                                                           文件描述符数字
标准输入(stdin):键盘                                                                        0
标准输出(stdout):显示器                                                                  1
标准错误(stder):显示器                                                                    2

2>&1 表示将标准错误(2)也传递到标准输出(1)传递的位置,&表示在后台执行当前命令;

<  用于标准输入



6、作业控制

ctrl+z     暂停命令

jobs     在当前shell中显示自己的进程

bg      向后台传送进程

fg       向前台传送进程



7、变量

变量分类:全局变量、局部变量和环境变量

查看变量的命令:env或者set(可以列出shell中未声明的自定义变量)

变量的命名:变量名可以由字母、数字或者下划线组成,但是不能以数字开头;

定义变量

变量名=变量值

注:“=”的两侧不能有空格,变量值中如果包含空格等符合需要使用双引号括起来;

自定义的变量只在当前的shell中生效,如果想要其子shell中也生效定义的变量需要使用export命令进行声明;

格式:变量名=变量值  ; export    变量名

或者

export     变量名=变量值

变量的引用;例如:value=11;echo  $value

取消变量:unset  变量名

/etc/profile:初始化系统全局shell变量

/etc/bashrc:定义用于shell函数和别名的系统全局变量

~/.bash_profile:用户个人的环境设置文件

~/.bashrc:用户个人的别名及变量设置文件

~/.bash_logout:系统退出设置文件

source命令:立即适用shell环境设置文件。也可以用 “.” 。


引用符号 说       明
 双引号 除美元符号、单引号、反引号和反斜线之外,其他所有的字符都将保持字面意义
单引号 所有字符都讲保持字面意义
反引号 引号中的字符串将被解释为shell命令
反斜线 转义字符,屏蔽字符的特殊意义


8、常用的文本处理命令

1)命令cut用于选取文本列

格式:cut  [选项] [文件]

选项:-c :指定字符

-d :指定分隔符

-f :指定要选择的字段

2)命令sort用于文本的排序

格式:sort [选项] [文件]

选项:-t:指定字段分隔符

-u:删除重复的行

-k:自定义关键字

-d:根据字典顺序排序

-n:根据算数值进行比较

-r:逆向排序

3)命令wc产看文件统计信息

格式:wc [选项] [文件]

选项:-l:统计文件的行数

-w:统计文件的单词数

-c:统计文件的字节数

-L:统计文件中最长的行的长度

4)命令uniq文本去重

格式:uniq [选项] [文件]

选项:-c:统计重复行出现的次数

-d:显示文件中有重复的行并只显示一次

-D:显示文件中所有重复的行

5)命令tr替换或删除字符

格式:tr [选项] [参数1] [参数2]

选项:-d:删除指定的字符

6)命令tee重定向并显示

7)命令split分割

格式:split [选项] [文件]

选项:-l:以行为单位

-b:以字节为单位

-d:以数字填充文件名末尾



9、使用多重指令

分号(;):用来连接多个命令,第一个命令不论是否成功,都执行第二个命令

符号(&&):当第一个命令正常执行,才执行第二个命令

符号(||):当第一个命令执行失败,才去执行第二个命令

时间: 2024-10-20 17:14:29

linux学习笔记-第十一课-shell基础的相关文章

Linux学习笔记 第十一课 shell基础知识

一.shell特性 1.history !! !$ !n !str 2.tab 命令补全 3.alias 和 unalias 4.通配符 * ?  [ ] 5.输入输出重定向 >, >>, <, << , 2>, 2>>, &>,&>> 二.变量      1.系统变量 set  env export 2.变量命名规则 3.取消变量  unset 4.变量引用:``  ' '  " " 三.系统和个

Linux学习(二十一)Shell基础(一)认识shell、命令历史、命令补全、别名、通配符、管道符与前后台控制

前言 这个系列我们学习shell的基础知识. 一.认识shell 我们经常使用的终端,其实就是一个shell.Bourne开发的shell原本叫shell,后来再版Bourne Again Shell叫做Bash.我们通常使用的shell就是Bash. 二.命令历史 history命令能够记录我们使用过的命令: [[email protected] ~]# history|tail -n3 803 history|tail -n3 804 history 805 history|tail -n3

Linux学习笔记(15)shell基础之Bash基本功能

1 shell概述 shell是一个命令解释器,为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序.用户可以用shell启动.挂起.停止甚至是编写一些程序. shell是一个功能强大的编程语言,其特点是易编写.易调试及灵活性强.shell是解释执行的脚本语言,可直接调用Linux系统命令. shell通常分为两类:B shell和C shell.前者的主文件名为sh,后者主要用于BSD版本的Unix中,其语法格式和C语言类似.这两种shell的语法彼此间不兼容.Bash与sh兼

Linux学习笔记(16)shell基础之Bash变量

1. 用户自定义变量 (1)变量设置规则 ① 变量名称可由字母.数字和下划线组成,但不能以数字开头: ② 变量的默认类型为字符串类型,如果要对数值运算,则必须指定变量类型为数值型: ③ 变量用等号连接值,且等号两侧不能有空格: ④ 变量的值如果有空格,需使用单引号或双引号括起: ⑤ 变量的值中,可使用"\"转义符: ⑥ 如果需要增加变量的值,可以进行变量值的叠加,不过变量需要用双引号包含,即"$变量名",或者用${变量名}包含: ⑦ 如果是把命令的结果作为变量值赋予

Linux 学习笔记 更多的bash shell命令

一  监测程序 1.ps 输出运行在系统上的所有程序的许多信息 运行ps命令,也会开启一个进程 默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户的进程. Unix风格的参数(单破折号) -e  显示所有进程 -f   显示完整格式的输出 -H  用层级格式来显示进程(树状,用来显示父进程) PPID: 父进程的进程号 TTY: 进程启动时的终端设备 C:进程生命周期中的CPU利用率 S:进程的状态(0代表正在运行:S 休眠: R 可运行:Z 僵化,即进程已结束,父进程无响应或已不存在

linux学习笔记--工程师技术:shell脚本基础

 Shell脚本 脚本:可以执行文件,运行后可以实现某种功能(命令的堆积,非交互) 规范Shell脚本的一般组成 #! 环境声明(Sha-Bang) # 注释文本 可执行代码 #!/bin/bash   #环境声明,声明写的脚本是bash这个程序翻译的 一.书写第一脚本程序 [[email protected] ~]# vim /root/1.sh #!/bin/bash echo hello world hostname cat  /etc/redhat-release ifconfig |

Linux学习笔记&lt;二十一&gt;——busybox制作小系统

制作流程: kernel->initrd(busybox)->rootfs(busybox) kernel:直接利用/boot/vmlinuz-`uname -r`内核镜像或手动编译生成 initrd:编译busybox,在busybox的基础上建立initrd rootfs:同样在busybox的基础上建立rootfs 一.为小系统上的新硬盘建立分区并挂载在宿主机的相应目录,以便创建修改文件. /dev/hda1    100M    boot分区    挂载在/mnt/boot /dev/

Linux学习笔记 (八)Shell概述

一.什么是Shell? Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动,挂起,停止甚至是编写一些程序.Shell还是一个功能强大的编程语言,易编写,易调试,灵活性强.Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令. 二.Shell的分类 1.Bourne Shell:简称:B Shell,从1979年起Unix就开始使用Bourne Shell,B Shell的主文件后缀是.sh,bs

linux 学习笔记 基本的bash shell命令

/etc/passwd 文件包含了所有系统用户账户列表以及每个用户的基本配置信息 用户名:密码:UID:GID:用户全名:用户默认的工作目录:用户默认的shell程序 默认情况下,bash shell启动时会自动处理用户主目录下.bashrc文件中的命令. 它经常设置各种应用程序中用到的环境变量. “-”是主目录的缩略表示 PS1:控制默认命令行提示符的格式 PS2:控制后续命令行提示符的格式 所有提示符特殊字符都从反斜线(\)开始. man命令用来访问存储在Linux系统上的手册页面. Nam