十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、shell基础
鼓楼ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!
二、命令历史
我们使用过的命令,即命令历史,会存放在系统家目录下面/root/.bash_history history命令可以查看使用的命令历史,系统默认为1000条
history -c 可以清空内存里面的命令历史,但是不会清空/root/.bash_history里面的命令
注:只有正常退出终端时,敲过的命令才会保存到/root/.bash_history里面去
环境变量HISTSIZE可以在/etc/profile里面自定义命令历史条数,可以vi /etc/profile 找到HISTSIZE参数,修改,然后执行命令 source /etc/profile
修改命令历史格式,增加时间选项,可以更直观的查看
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
该格式只在当前终端生效,如果想在其他终端也生效,需要编辑配置文件 vi /etc/profile,在配置文件添加HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
想要命令历史永久保存,并不会被别人删除,chattr +a ~/.bash_history只能追加,不能删除
!!表示执行最后一条命令
!n(代表数字)
!history,则会在命令历史里面找到最后一次以history开头的命令
三、命令补全及别名
按一次tab键可以补全一次命令,一个文件,或者一个目录,连续按两次tab键,则会把所有命令或者文件名列出来,centos7里面支持参数自动补全,需要安装包bash-completion;然后重启系统生效
我们可以通过alias把一个常用但是命令很长的命令设置一个别名,如果不想使用,可以使用unalias取消别名,直接执行alias可以查看所有别名
alias存放路径:
第一个存放在家目录.bashrc文件下
第二个存放在/etc/profile.d目录下的colorgrep.sh colorls.sh 这些脚本中自定义
unalias取消别名,格式 unalias alias_name
四、通配符
通配符*,表示零个或者多个字符
通配符?,表示任意一个字符
中括号[] ls [0-9].txt表示0-9范围内的任意.txt文件
花括号{},ls {1,2,3}表示括号内任意txt文件
五、输入输出重定向
cat 1.txt >2.txt,大于号>表示将前面的命令输出,直接输入到后面的文件里面去,这里是将1.txt的内容重定向到2.txt里面去,之前2.txt的内容会被删除
cat 1.txt >>2.txt,两个大于号表示追加,不会删除之前2.txt里面的内容,把1.txt里面的东西追加到2.txt里面去
ls asas 2>a.txt大于号表示将命令产生的错误信息输入到一个文件里面去
ls asdfgh 2>>a.txt,表示将错误信息追加重定向
ls {1,2}.txt bc.txt &>a.txt 2>b.txt,表示将正确和错误的信息输入到a.txt中
ls {1,2}.txt bc.txt &>a.txt,表示将正确和错误的输出信息都追加到a.txt中
ls {1,2}.txt bc.txt >a.txt 2>b.txt 表示将正确的输出信息输入到a.txt中,错误的输出信息输入到b.txt中
wc -l <1.txt,表示把1.txt文件内容输入重定向到命令wc -l中去,左边必须是命令,不能由文件到文件,了解即可
六、管道符合作业控制
管道符|,勇于将前一个命令的输出做为后一个命令的输入
cat 1.txt |wc -l;cat 1.txt |grep 'ccc'
命令wc -l :统计文件数量
命令grep:用来过滤关键词,只要文件含有关键词,就可以把这一行过滤出来、
作业控制
ctrl +z 暂停一个正在执行的任务
fg命令恢复
如果暂停多个任务,可以用jobs查看在后台运行的任务
如果想重新调回,输入fg+id 也可以使用bg放在后台运行,用法bg+id
bg+id 把任务调到后台运行
fg +id 把任务调到前台运行
sleep命令,sleep 100相当于让机器休眠静止100秒
“&”命令,后面加&相当于把任务直接调到后台运行