码迷,mamicode.com
首页 > 系统相关 > 详细

linux基础篇-06,linux bash特性详解

时间:2016-11-16 03:18:16      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:工作环境   linux   程序   管道   定向   

################################################


bash及其特性

shell外壳

clt:sh csh ksh bash tcsh zsh

程序和进程之间的关系:1个程序,多个进程

进程:每个进程,当前主机只存在内核和当前进程

进程是程序的副本,进程是程序的执行实例


用户工作环境

bash

shell与子shell


################################################


bash支持以下特性

1,命令历史

2,管道 重定向

3,命名别名

4,命令行编辑

5,命令行展开

6,文件名通配

7,变量

8,编程



################################################


9,命令行编辑


支持命令光标跳转

ctrl+a:跳至行首

ctrl+e:行尾

ctrl+u:删除行首

ctrl+k:删除行尾

ctrl+l:清屏


################################################


10,history

-a: 追加到/root/.bash_history

-c:清除命令历史

-d:删除指定位置的命令

-w: 覆盖/root/.bash_history


命令历史使用技巧

!n:执行命令历史中的第n条

!-n:执行命令历史中的倒数第n条

!!:执行上一行

!string:执行命令行中的最近一个以指定字符串开头的命令

!$:引用前一个命令的最后一个参数



################################################


11,命令补全


################################################


12,目录补全


################################################


13,命令别名

alias

[root@Jameszhan ~]# alias

alias cls=‘clear‘

alias cp=‘cp -i‘

alias l.=‘ls -d .* --color=auto‘

alias ll=‘ls -l --color=auto‘

alias ls=‘ls --color=auto‘

alias mv=‘mv -i‘

alias rm=‘rm -i‘

alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘


[root@Jameszhan ~]# alias cls=‘clear‘

[root@Jameszhan ~]# cls


取消别名

[root@Jameszhan ~]# ualias cls


################################################


14,命令替换 $(COMMAND)


[root@Jameszhan ~]# echo "it is the dirctory $(pwd)"

it is the dirctory /root


创建时间命名的文件

[root@Jameszhan ~]# touch /tmp/file-$(date +%F-%H-%M-%S).txt

[root@Jameszhan ~]# ls /tmp/

file-2016-11-15-19-10-06.txt  ssh-IGeaZ44692  testcp   t.txt

lost+found                    t1.txt          tmp.txt


################################################


15,bash支持的引号

反引号`` :命令替换

双引号" ":弱引用

单引号‘‘ :强引用


################################################


16,文件名通配 globbisg

* :任意长度任意字符

?:单个任意字符

[]:匹配指定范围内的单个字符

  [abc],[a-z],[A-Z],[0-9],[a-zA-Z],[0-9a-zA-Z]

  [:space]:空白字符

  [:punct:]:标点符号

  [:lower:]:小写字母

  [:upper:]:大写字母

  [:alpha:]:大小写字母

  [:digit:]数字

  [:alnum:]:数字和大小写字节

[root@Jameszhan t]# man  7 glob


[^]:匹配范围之外的任意字符,键盘数字键6的那个键 shift+6



[root@Jameszhan etc]# ls /tmp/t*

/tmp/t1.txt  /tmp/test  /tmp/test1  /tmp/test2  /tmp/tmp.txt  /tmp/t.txt


/tmp/testcp:

testcp.txt

[root@Jameszhan etc]# ls /tmp/a*

/tmp/atest2

[root@Jameszhan etc]# ls /tmp/b*

/tmp/btest2


################################################


本文出自 “James zhan Linux高级运维” 博客,请务必保留此出处http://jameszhan.blog.51cto.com/10980469/1873258

linux基础篇-06,linux bash特性详解

标签:工作环境   linux   程序   管道   定向   

原文地址:http://jameszhan.blog.51cto.com/10980469/1873258

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!