第九章 Shell基础
9-1Shell 概述
Linux操作界面
9-2 脚本执行方式
echo
输入内容有空格加双引号
控制字符-e:支持反斜线控制
颜色输出
echo -e “\e[1;31m 内容\e[0m” #
2、第一个脚本
# !/bin/bash # 不是注释,标称下面的程序是Linux脚本,如果引用其他语言,不写会错
# the first program# 注释
echo -e "\e[1;34m 天上掉下个林妹妹\e[0m"
vim操作
(1)输入大写i,insert,编辑
(2)退出vim
Esc,输入:wq
W:write,写入
Q:quit,退出
3、脚本执行
(1)赋予执行权限,直接运行
chmod 755 hello.sh
权限变为:
./hello.sh
(2)通过Bash调用执行脚本
bash hello.sh # 不需要执行权限
9-3 Bash的基本功能
1、命令别名
命令别名==人的小名
命令太长起个别名
(1)查看
alias,查看已生效的别名
alias ls=‘ls --color=auto’
执行ls,就是执行后面一整句自动带颜色
alias ll=‘ls -l --color=auto’
(2)设定
临时,重启系统后失效
alias ls=‘ls --color=auto’ # 别名=原名
永久生效
vi ~/.bashrc # 写入环境变量配置文件
(3)删除
unalias 别名
环境变量配置文件也要删除
(4)命令生效顺序
第一顺位执行用绝对路径或相对路径执行的命令
第二顺位执行别名
第三顺位执行Bash的内部命令
第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令
2、快捷键
2、历史命令
上下箭头
history
选项-c 清空历史命令,一般不清空,默认保存1000条
-w:把缓存中的历史命令写入历史命令保存文件~/.bash_history(不写的话等退出才保存)
修改默认保存条数/etc/profile
HISTSIZE=1000
历史命令调用
上下箭头
!n 重复执行第n条
!!重复执行上一条
!字串:重复执行最后一条以字串开头的命令
命令与文件补全
tab
双击列出所有,单击补全唯一
3、输出重定向
标准输出只记录正确的输出
错误输出>左右没有空格
ls &>/dev/null 黑洞,不输出
3、输入重定向wc
-c 统计字节数
-w 统计单词数
-l统计行数
wc
输入字符串
ctrl+d,列出统计结果
wc < 文件名
统计文件结果
wc << 字符串
4、多命令顺序执行
ls && echo yes || echo no # ls正常运行输出yes,不正常输出no
管道符
命令1 | 命令2
命令1的输出结果是命令2的操作对象
ls > abc
more abc
ls | more
more直接操作ls结果
netstat -an | grep “ESTABLISHED”
5、shell中特殊符号
通配符
主要用来匹配文件名,目录名称
ls name?
ls filename*
ls filename[0-9]
ls filename[^0-9]
文件内容匹配,使用正则表达式
用$()代替··反引号