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

Shell基础:介绍、历史命令、命令不全和别名、通配符、输入输入重定向、管道发和作业控制

时间:2018-02-20 20:22:26      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:shell   生效   image   ima   nbsp   chattr   ==   white   logo   

 



       Shell的介绍


 技术分享图片

  zsh、ksh(yum list |grep zsh 进行查看,然后可以相应的进行安装

技术分享图片

        

                 命令历史

技术分享图片

1. /root/.bash_history  (此文件存放着我们敲过的命令)



2. history (可以查看到我们之前使用过的命令有多少条。最大可以存1000条)

使用环境变量可以查看到存放了多少条命令 echo $HISTSIZE 

技术分享图片


3. history -c 此命令是清除内存中我们敲过的缓存命令(当我们在当前终端敲命令时,它并不会立马保存到配置文件中,而是缓存在内存里) ,但这个命令是不会删除 /root/.bash_history 这个配置文件的内容。


4.敲过的命令什么时候才会保存在配置文件中?

 只有我们在正常退出终端的时候才能保存到配置文件中,否则只是暂时的保存到内存里(正常退出的命令:exit、logout)

5.环境变量$HISTSIZE 

在配置文件 /etc/profile 修改环境变量 $HISTSIZE

技术分享图片

修改了变量的大小后,需要执行 source /etc/profile 或者重新进入终端才会生效

技术分享图片

6.查看敲过命令是什么时候运行记录下来 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

 (1)定义一下:HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

 (2)查看一下变量: echo $HISTTIMEFORMAT

技术分享图片

但是此时我们定义的环境变量 $HISTTIMEFORMAT 仅仅是在当前的终端生效,如果重启仍然是不存在的

技术分享图片

(3)永久生效,修改 /etc/profile

vi /etc/profile

添加内容:HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

技术分享图片

7.命令历史永久保存 不让别人删除-->添加隐藏条件 -a 只能追加不能删除

 执行命令:chattr +a ~/.bash_history

条件+a 只能追加不能删除


8. exit / logout 为正常退出终端

不正常的退出终端时,使用过的命令就不会记录完全

!! 表示上一条命令

!n 表示历史第n条命令

技术分享图片

!字符串 表示从下往上找最近使用过“字符串”的命令并执行



             命令补全和别名

技术分享图片

1.tab键 不仅可以不全命令,也可以不全文件


2.参数不全

(yum install -y bash-completion)

3.alias别名:

设置自定义的别名:

alias 要起的名字='要代替的名字'

alias restartnet='systemctl restart network.service '

取消自定义的别名:

ualias restartnet



alias定义的地方

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

 ls /etc/profile.d/


 

                 通配符

技术分享图片


1.  *  :表示零个或者多个任意字符

技术分享图片

2.  ?  :表示一个任意的字符

技术分享图片

3.ls [0-3].txt

[范围]任意一个满足的条件,只取一个。

4.ls {1,2,3,a}.txt 取一个1或2或3或a


                   

                   输入输出重定向

1.> 重定向 cat 1.txt>2.txt (把1.txt的内容输入到2.txt)

2.>> 追加  cat 1.txt>>2.txt (不会把原来的内容删除,把1.txt的内容追加到2.txt)

3.ls aaa.txt 2>err  把前面的错误的信息输入到后面的文件中

技术分享图片

3.ls aaa.txt 2>>err  把前面的错误的信息输入到后面的文件中

>+2 == &>

技术分享图片

把[12]txt 正确的输入到a.txt ,把 aaa.txt错误信息写到b.txt


4.wc -l < 1.txt



                管道符、作业控制

技术分享图片

管道符 | :把前面命令的的输出交给后面命令的输入

技术分享图片


暂停任务:ctrl+ z  (临时暂停,仍到后台 ,调回前台 fg


jobs 可以把暂停的任务列出来。

技术分享图片

fg +id号就能把相应暂停任务调回前台。 fg 2


bg 把任务放到后台


sleep 1000 暂停1000秒

sleep 100 &  加上&可以把运行任务如直接放到后台执行


 


Shell基础:介绍、历史命令、命令不全和别名、通配符、输入输入重定向、管道发和作业控制

标签:shell   生效   image   ima   nbsp   chattr   ==   white   logo   

原文地址:http://blog.51cto.com/13589255/2071971

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