首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
学习笔记第二十二节课
时间:
2018-04-20 23:29:21
阅读:
111
评论:
0
收藏:
0
[点我收藏+]
标签:
作业
shell介绍
shell是一个命令解释器,提供用户和机器之间的交互。
用户配置的最后一个段 就是shell
创建的普通的用户 它的shell是bin bash
每个用户都可以有自己的shell sentos7 的shell 是bash
除此之外还有 zsh ksh ,用起来和bash 很像,但是有细节上的差异。
仓库里面提供的也有zsh 和ksh的rpm包,可以去yum安装它。
-
shell还有自己特定的语法,比如逻辑判断等。
命令历史
敲过的命令是又一个文件保存着的。
可以cat 看一下之前敲过的命令。
可以用history 查看之前的命令 最大存储1000条。
是由环境变量配置的,echo $HISTSIZE
有时候敲命令出现1004 或者更多,是因为这些命令还没有写到环境变量中去。
history -c 可以把当前内存里面的历史清空 但是配置文件里面的是没有清空的。
敲的命令是退出终端才会保存到配置文件中去。
HISTSIZE环境变量需要到etc/profile 当中进行修改。
比如觉得1000太少,可以修改为5000
保存退出后,再去查看还是1000 需要重启终端或者 运行source /etc/profile 才会生效。
history去查看,只有id号和命令, 其实也可以显示出时间。
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S " 指定这个变量的格式。
echo $ HISTTIMEFORMAT 格式已经更换了。
这个环境变量仅仅是在当前终端生效的,去从新复制个渠道去查询是空的,也就是在另一个渠道,系统默认这个环境变量是不存在的。需要去定义它。
再次history 查看 就显示时间和日期了。
想让这个生效,还可以编辑etc/profile 把这个环境变量写到下面。
然后 sorce一下。
再从新打开一个渠道,就发现已经生效了。
想让记录的命令 永久保存,不被删除,可以给它增加一个隐藏权限 a权限。增加后只能追加不能删除掉,用户所有的命令都会记录下来。但是有特殊的情况,如果没有正常退出终端的话 会记录不完整。
!!两个叹号是上一条命令 也就是你最后输的一条命令。
!+数字 是重复执行 你所输入数字的命令。
!+字符串,就可以倒着往上数使用 最近的一次 使用 的字符串的命令。
命令补全和别名
tab 补全 不仅可以补全命令 还可以补全文件和目录名。
当文件 或者命令名 开头一样 后面的不一样 需要两次tab
在sentos7里面可以补全参数 但是默认是没有的,需要yum 安装。
yum install - y bash-completion
这个时候还是不行的 需要重启一下才能生效。
reboot 重启。 然后就可以自动补全了。
alias 别名 给命令重新起名字 比如 这个重启网络服务的命令很长,我们可以给他重起个名字,简单一点。
取消别名的命令是unalias +别名
alias都有哪些 可以直接alias 把这些都列出来,
这些alias都在哪里 用户家目录下.bashrc里面有三个, 其他的都在etc/profile.d/下。
通配符
之前有用过 *就是通配的意思,
比如当前目录下有几个txt文件,就可以用
来把它们都列出来。也可以
txt 也可以
在两边
txt*
也可以在后面 比如 1* ,1开头的不管是目录还是文件都会列出来。
还有? 表示一个任意一个字符。 (bb.txt没有列出来 因为是两个字符)
还有[ ] 里面可以写一个范围,比如ls【0-3】.txt 只要这个范围内任意一个满足方括号内的条件,就会被列出来。 也可以写如数字 加上大写
还有{} 和[ ]差不多, 但是要加个逗号。
输入输出重定向
>是把前面的命令输出 给输入到后面的文件里面去。
比如cat 1.txt>2.txt 会把1.txt删除掉重写。
>> 是追加, 不会删除之前命令的内容。
2> 会把这个命令产生的错误信息给指定输入到一个文件里去。
比如运行一个有问题的错误命令。他会提示没有命令,用2> 就会把这个错误的命令 写到一个文件里, cat查看 就会看到这个错误命令。
2>> 错误追加重定向。 (linux的追加就是在文件里 再后面加一些内容)
>+2>=&> 也就是这两个可以结合起来。可以把错误 正确的输出信息 定向到一个文件里去
做个实验:
同样也可以追加。
也可以这样写 比如 ls [123].txt abc.txt >1.txt 2>a.txt
这样就可以分开,
这样就可以把正确和错误区分开, 以后写shell脚本用的比较多。
< 输入重定向。 可以把右边的文件内容 输入重定向 一个文件或者命令里面。
比如把1.txt 输入重定向到一个命令里面去。
这里要注意 输入重定向只能是一个输入到一个命令 不能是文件。
学习笔记第二十二节课
标签:
作业
原文地址:http://blog.51cto.com/13645927/2105978
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!