linux 历史命令不全,Linux学习笔记(二十三)shell介绍、history命令历史、命令补全和别名、通配符、...

本文介绍了 CentOS 中 shell 的基本概念及其功能,包括 bash 和其他 shell 类型的使用,详细讲解了 history 命令的历史记录管理、命令补全与别名设置的方法,并演示了如何使用通配符进行文件匹配及输入输出重定向技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、shell介绍

shell是一个命令解释器,提供用户和机器之间的交互

支持特定语法,比如逻辑判断、循环

每个用户都可以有自己特定的shell

CentOS7默认shell为bash(Bourne Agin Shell)

还有zsh、ksh等、

二、history

history命令

c392a0c3e3838e7f8bad69f5250ccd96.png

是最近输入过的命令历史,当前输入的命令会放在内存当中,只有每次正常退出终端,命令历史才会写入history文件中

.bash_history

命令历史存放的文件

echo $HISTSIZE

969b4f0532da53f0c91a98e9bb58c4ea.png

命令历史最大存放1000条

这个设置可以在

/etc/profile中修改

vim etc/profile

0b2fbcd2d4dcd53efe7c88a81c92cd81.png

如果想让历史表中显示历史命令的时间可以用以下命令

HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

单独执行时只在当前命令窗口生效

51c9bb2a0449196265064f79f61d1931.png

6d927f58988fde7f5dd8c020713ddb6b.png

想要永久生效的话就将命令加入/etc/profile 环境变量

vim /etc/profile

source !$ //使环境变量生效

f74081a25616e24dffc7f4bfb3b9f531.png

eff8e9af5c70c118f6ec5ea6a9263d05.png

如果希望history文件永久保存

chattr +a ~/.bash_history

这时候文件只能追加不能删除,无视1000条限制

!!

执行上一条命令

!n

执行历史命令中第n条命令

!word

执行命令历史中最后一条Word命令,这里Word可以更换为任意命令

三、命令补全和别名

tab键,敲一下,敲两下

敲一下会自动补全命令。如果有多个开头相同的命令,则需要敲两下从列表中选择

参数补全,安装bash-completion

yum install -y bash-completion

安装后需要重启生效

alias别名给命令重新起个名字

alias restartnet='systemctl restart network.service'

e7d9e997aa311daef4549cebe75bdbb6.png

各用户都有自己配置别名的文件 ~/.bashrc

这个文件有很少的几个默认alias

/etc/profile.d/ 目录下存放一些其他的别名

ls /etc/profile.d/

f83974d6945d5b2e70726cd58f690182.png

自定义的alias放到~/.bashrc

取消别名用unalias

四、通配符

ls *.txt //列出所有的txt文件

ls ?.txt //列出文件名是一个字符的txt文件

ls [0-9].txt //列出文件名是1-9的txt文件

ls [13].txt //列出文件名是1或者3的txt文件

ls {1,2}.txt //列出文件名为1的txt文件和文件名为2.txt文件,如果有其中一个不存在,会提示

a5952ac76125c7e77c92f9259ae39d9e.png

47270708d28c23097eba08190fc8ffff.png

五、输入输出重定向

cat 1.txt >2.txt //将前面命令的输出输入到后面的文件中(覆盖2.txt内容)

cat 1.txt >> 2.txt //将前面命令的输出追加输入到后面的文件中(在2.txt中追加)

ls aaa.txt 2>err //将前面命令的错误信息输入到后面的文件(覆盖)

ls aaa.txt 2>>err //将前面命令的错误信息追加输入到后面的文件(不覆盖)

ls {1,6}.txt &>999.txt //将正确和错误信息都输入到后面文件中

ls {1,6}.txt >999.txt 2>66.txt //将正确信息输入999.txt,错误信息输入66.txt

wc -l < 1.txt //输出右边文件的文件行数(左边需要是命令,不可以是文件)

c20f556799b48194d24f1d2711c10bd7.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值