DAY1

1、shell介绍

shell脚本仅仅是shell的一个表现

centos7 用的是bash

shell是用户和Linux操作系统之间的接口。Linux中有多种shell,其中缺省使用的是Bash。本章讲述了shell的工作原理,shell的种类,shell的一般操作及Bash的特性。

什么是shell

Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。
shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。
shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传给Linux核心。
Shell是一种具备特殊功能的程序, 它是介于使用者和 UNIX/linux 操作系统之核心。

yum list |grep zsh 查看有没有安装zsh
yum list |grep ksh 查看有没有安装ksh
在这里插入图片描述
2、命令历史
ls /root/.bash_history /root/.bash_history历史命令存放位置,退出终端时才会保存到文件中去

history 查看历史命令,最大存放1000条

echo $HISTSIZE 查看能存放多少条命令

history -c 清空内存中的历史命令,不能删除存命令的配置文件

vim /etc/profile 编辑/etc/profile,定义记录多少条历史命令
在这里插入图片描述
echo $HISTSIZE 查看记录多少条历史命令

source /etc/profile

要命令历史数值生效需要重新进一下终端或者source一下
在这里插入图片描述
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" 记录命令什么时候运行的时间

%Y 年份 %m月份 %d日期 %H:%M:%S小时 分钟 秒

echo $HISTTIMEFORMAT 系统默认环境变量不存在,需要自己定义

会记录日志和时间

vim /etc/profile 编辑配置文件,让变量永久生效
在这里插入图片描述
在这里插入图片描述
source !$ 执行上一条source开头的命令
在这里插入图片描述
在这里插入图片描述
chattr +a ~/.bash_history 定义特殊权限,只会追加,不会删除

exit 正常退出,没有正常退出命令保存不全

!! 上一条命令

!n n指的是数字,运行指定等于n的命令

!echo 运行以echo开头的命令

3、命令补全和别名
tab键,命令开头一样多余两个的时候需要按两下,一个自动补全
在这里插入图片描述

yum install -y bash-completion yum安装bash-completion

reboot 重启系统

rpm -qa bash-completion 查看bash-completion包有没有安装

systemctl restart network.service 重启网络服务
在这里插入图片描述

alias restartnet=‘systemctl restart network.service’ 将systemctl restart network.service定义别名成restartnet

alias 查看系统里的所有别名
在这里插入图片描述

vi .bashrc 编辑定义别名文件

cd /etc/profile.d/ 定义别名的目录
在这里插入图片描述
colorls.sh ls变量

colorgrep.csh grep变量

.bashrc /etc/profile.d/

unalias restartnet 取消自定义别名restartnet
在这里插入图片描述

4、通配符

ls *.txt *表示通配符

ls ?.txt ?表示任意的一个字符

ls [0-3].txt [0-3]表示0到3中的任意一个字符

ls [123].txt [123]表示1、2、3所有的三个字符

ls {1,2}.txt 相当于1或2

在这里插入图片描述

5、输入输出重定向

把前面命令的输出输入到后面的文件里面去(正确输出信息)

cat 1.txt > 2.txt 把1.txt的内容重定向到2.txt里面去

追加重定向

2> 把命令产生的错误信息输入到文件里面去(错误输出信息,错误重定向)

2>> 错误输出信息,错误追加重定向

+2>等于&> 结合了正确和错误重定向

< 输入重定向

lsaaa 2> a.txt 把lsaaa产生的错误信息输入到a.txt
在这里插入图片描述

lsaaa 2>> a.txt 把lsaaa产生的错误信息追加重定向到到a.txt

在这里插入图片描述
ls [12].txt aaa.txt&> a.txt 错误和正确信息同时重定向到a.txt
在这里插入图片描述

ls [12].txt aaa.txt >3.txt 2>a.txt 既有正确输出也有错误输出

在这里插入图片描述

wc -l < 3.txt 把1.txt输入给wc -l查看文件长度,左边必须是命令
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值