bash及其特性

shell:外壳

GUI:GNOME,KDE,Xfce CLI:sh,csh,ksh,bash,tcsh,zsh

程序,进程

允许一个用户登录多次 进程:在每一个进程看来,当前主机上只存在内核和当前进程 进程是程序的副本,进程是程序执行的实例

bash自身是外部命令 但是它带有自身命令

用户的工作环境:

bash: shell,子shell

bash---bash

某些设定bash之间互不影响(非环境变量)

bash:

  1. 命令历史
  2. 管道,重定向
  3. 命令别名
  4. 命令行编辑
  5. 命令行展开
  6. 命令名通配
  7. 变量
  8. 编程

命令行编辑

Ctrl+a:跳到命令行首 Ctrl+e:跳到命令的行尾 Ctrl+u:删除光标到行首 Ctrl+k:删除光标到行尾 Ctrl+l:清屏

命令历史:

上下箭头即可以翻历史命令

history:查看命令历史 -c:清空命令历史 -d offset [n] :删除指定位置的命令 history -d 500 3 从500 -w :保存命令历史到文件中去

环境变量

PATH:命令搜索路径 HISTSIZE:命令历史缓冲区大小

命令历史的使用技巧:

!n :执行命令历史中的第n条命令 !-n:执行命令历史中的倒数第n条命令 !!:执行上一条命令 !string:执行命令历史中最近一次匹配的命令 引用前一个命令的最后参数 !$:引用前一个命令的最后参数 ESC,. 上一次命令 ALT+.

命令补全:

PATH: TAB:自动补全 连敲两次TAB键 路径补全:(文件,目录补全)在给定的打头的路径下查找

命令别名:

alias CMDalias=command [option] 注意:如果有空格必须要单引号。 在shell定义的别名仅在当前生命周期中有效;别名的有效范围为当前shell进程。 alias 可以显示系统上所有的别名 ualias cmdalias

命令替换$(command) `command`

把命令中某个子命令替换为其执行结果的过程 file-2013-02-28-53-31.txt touch ./file-$(date +%F-%H-%M-%S).txt

bash支持的引号:

``:命令替换 "":弱引用,可以实现变量替换 '':强引用,不完成变量替换

文件名通配,gloobbing

*:可以匹配任意长度的任意字符
?:匹配任意单个字符
[]:匹配指定范围内的单个字符
   [abc]  [a-z]  [A-Z] [0-9] [a-zA-z]
[^]:匹配指定范围内之外的任意单个字符
touch a b      touch 'a b'
[:space:]:空白字符  
[:punct:] :标点符号
[:lower:]:小写字母
[:upper:]:大写字母
[:digit:]:数字
[:alnum:]:数字和字母
man 7 glob
[[:alpha:]]*[[:space:]]*[[:alpha:]]
[^[:alpha:]]
ls [am]*
ls *[0-9]  ls *[[:digit:]]
ls  [^[:space:]]*[0-9]
ls    *[^[:alnum:]]*

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • golang爬虫初体验

    最近在学习golang,看网上很多人都喜欢爬豆瓣,今天我就写了一个golang版的爬虫。对于python爬虫,我很了解,什么dom树,js异步,爬虫技术栈都是没...

    若与
  • 程序员必知必会的那些邪恶的脚本

    朝圣 前言 程序员必须掌握一定的运维知识。本文通过一些邪恶,搞破坏的方式。教会你一些危险的脚本操作。 附赠 运维意识与运维规范 1.线上操作规范 ...

    若与
  • DevOps人员常用的linux命令

    以下内容是来自网路,中间加入了自己工作中的使用总结 命令 功能说明 线上查询及帮助命令 (2 个) man 查看命令帮助,命令的词典,更复杂...

    若与
  • Linux系列教程(七)——Linux常用命令之帮助和用户管理命令

      上篇博客我们介绍了Linux文件搜索命令,其中find是用的最多的也是功能最强大的文件或目录搜索命令,和另一个搜索命令locate的区别是,find命令是全...

    IT可乐
  • Linux常用命令(五) 原

    将/tmp/Japan目录下的boduo和longze目录复制到/root下,保持目录属性

    wuweixiang
  • Linux之常用系统监控指令

    对于上面的命令,有些是Linux系统自带的,你可以直接执行。有些是第三方命令,不过绝大多数可以直接通过Yum install xxx或者apt-get inta...

    用户6367961
  • 深入浅出话命令

    WPF为我们准备了完善的命令系统,你可能会问:“有了路由事件为什么还需要命令系统呢?”。事件的作用是发布、传播一些消息,消息传达到了接收者,事件的指令也就算完成...

    莫问今朝
  • 以Terminal历史记录来提高Linux操作效率

    今天将聊的是每个用过Linux控制台的朋友都知道的一个存在:terminal的历史记录。关于它最常见的操作就是使用上下方向键进行历史命令的切换。刚接触命令行的同...

    波罗学
  • 分享几个有趣的Linux命令

    这个命令可以让我们将已经设置好的一段文字,匀速的在屏幕上打印出来,就像有机器人在敲键盘。

    纪莫
  • Redis 优化执行命令的延时

    Redis 是单线程的,客户端的命令请求在server中会被排队,按照顺序处理,如果队列长,命令执行结果的响应时间便会长 ? 如果客户端想要快点得到执行结果,可...

    dys

扫码关注云+社区

领取腾讯云代金券