标签:支持 数字 自己 解释器 .gz etc for 查看 show
shellshell是一个命令解释器,提供用户与机器之间的交互,支持特定的语法(逻辑判断、循环等);
每个用户都可以有自己特定的shell;
centos7默认shell为bash,其他shell还有zsh、ksh等;
可以查看历史命令;
在用户的家目录下的.bash_history文件中保存着之前敲过的命令,
默认最大存储1000条;
history命令可以查询;
更改变量HISTSIZE来达到更改存储数;
编辑文件vim /etc/profile
vim /etc/profile
修改HISTSIZE值,将HISTSIZE=1000改为5000
HISTSIZE=5000
更新缓存文件
source /etc/profile
查看变量值
[root@shu-test ~]# echo $HISTSIZE
5000
[root@shu-test ~]#
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
[root@shu-test ~]# HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
[root@shu-test ~]# echo $HISTTIMEFORMAT
%Y/%m/%d %H:%M:%S
[root@shu-test ~]# history | grep 2000
2000 2018/01/10 18:34:46 tar -zxvf httpd-2.2.34.tar.gz
2041 2018/01/10 19:31:53 history | grep 2000
[root@shu-test ~]#
vim /etc/profile
增加变量定义
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
HISTSIZE=5000
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
更新缓存
[root@shu-test ~]# source /etc/profile
[root@shu-test ~]# echo $HISTTIMEFORMAT
%Y/%m/%d %H:%M:%S
[root@shu-test ~]#
!!:表示执行上一条命令;
[root@shu-test ~]# pwd
/root
[root@shu-test ~]# !!
pwd
/root
[root@shu-test ~]#
!n:这里的n表示数值,,表示执行命令历史中的第n条指令;
[root@shu-test ~]# history | grep 1002
1002 2018/01/10 18:34:46 rmdir 123
2023 2018/01/10 18:45:15 history |grep 1002
2048 2018/01/10 19:44:16 history | grep 1002
2050 2018/01/10 19:45:21 history | grep 1002
[root@shu-test ~]# !2050
history | grep 1002
1002 2018/01/10 18:34:46 rmdir 123
2023 2018/01/10 18:45:15 history |grep 1002
2048 2018/01/10 19:44:16 history | grep 1002
2050 2018/01/10 19:45:21 history | grep 1002
[root@shu-test ~]#
[root@shu-test ~]# !pw
pwd
/root
[root@shu-test ~]#
centos7支持命令参数补全;
centos6只支持命令补全,不支持参数补全;
安装bash-completion包:
yum install -y bash-completion
安装后,重启生效;
当常用的命令与参数过长,我们可以定义一个别名来实现;
格式:
alias [别名] = ‘[源命令]‘
systemctl restart network.service
将这条重启网卡服务的命令定义一个新的命令restartnet
[root@shu-test ~]# alias restartnet=‘systemctl restart network.service‘
[root@shu-test ~]# alias
alias cp=‘cp -i‘
alias egrep=‘egrep --color=auto‘
alias fgrep=‘fgrep --color=auto‘
alias grep=‘grep --color=auto‘
alias l.=‘ls -d .* --color=auto‘
alias ll=‘ls -l --color=auto‘
alias ls=‘ls --color=auto‘
alias mv=‘mv -i‘
alias restartnet=‘systemctl restart network.service‘
alias rm=‘rm -i‘
alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘
[root@shu-test ~]#
[root@shu-test ~]# rest
restartnet restorecon
格式:
unalias [自定义别名]
[root@shu-test ~]# unalias restartnet
[root@shu-test ~]# alias
alias cp=‘cp -i‘
alias egrep=‘egrep --color=auto‘
alias fgrep=‘fgrep --color=auto‘
alias grep=‘grep --color=auto‘
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@shu-test profile.d]# restartnet
-bash: restartnet: 未找到命令
[root@shu-test profile.d]#
用户家目录下:~/.bashrc文件;
其他命令目录:/etc/profile.d/目录下的
[root@shu-test abc]# ls *txt
1.txt 2.txt 3.txt
[root@shu-test abc]# ls *.txt
1.txt 2.txt 3.txt
[root@shu-test abc]#
实验2:使用?来查询;
[root@shu-test abc]# ls ?.txt
1.txt 2.txt 3.txt
[root@shu-test abc]# ls 1?txt
1.txt
[root@shu-test abc]#
实验3:使用【n-n】方括号范围来查询;
[root@shu-test abc]# ls
1.txt 2.txt 3.txt a
[root@shu-test abc]# ls [0-2].txt
1.txt 2.txt
[root@shu-test abc]#
实验4:查询范围数字0-9的.txt 小写字母 大写字母.txt;
[root@shu-test abc]# ls [0-9a-zA-Z].txt
1.txt 2.txt 3.txt a.txt B.txt
[root@shu-test abc]#
实验5:“与”语句查询;
[root@shu-test abc]# ls [a].txt
a.txt
[root@shu-test abc]# ls [a3].txt
3.txt a.txt
[root@shu-test abc]#
实验6:花括号
[root@shu-test abc]# ls {1,2,a}.txt
1.txt 2.txt a.txt
[root@shu-test abc]#
实验1:输出重定向;
[root@shu-test abc]# echo "123" > x.txt
[root@shu-test abc]# echo "456" > x.txt
[root@shu-test abc]# cat x.txt
456
[root@shu-test abc]#
实验2:追加重定向;
[root@shu-test abc]# cat x.txt
123
[root@shu-test abc]# echo "234" >> x.txt
[root@shu-test abc]# cat x.txt
123
234
[root@shu-test abc]# echo "345" >> x.txt
[root@shu-test abc]# cat x.txt
123
234
345
[root@shu-test abc]#
实验3:错误重定向;
[root@shu-test abc]# ls [12].txt aaa.txt >x.txt 2>y.txt
[root@shu-test abc]# cat x.txt
1.txt
2.txt
[root@shu-test abc]# cat y.txt
ls: 无法访问aaa.txt: 没有那个文件或目录
[root@shu-test abc]#
记录历史命令,history,命令补全和别名、通配符、输入输出重定向
标签:支持 数字 自己 解释器 .gz etc for 查看 show
原文地址:http://blog.51cto.com/shuzonglu/2059609