linux学习笔记(2)shell 基础

Shell 是什么

shell 是一个命令行解释器,它为用户提供了一个向linux内涵发送请求以便运行程序的界面系统级程序。用户可以用shell 来启动,挂起,停止,深圳编写一些程序。
shell 还是一个功能相当强大的编程语言,易编写,易调试,灵活性比较强。shell 是解释执行的脚本语言。在shell中可以直接调用linux 系统命令。

查看当前系统使用的是什么shell

echo $SHELL
image.png

兼容shell
image.png

脚本的执行方法

1:echo 输出命令
echo [选项][输出内容]
-e :支持反斜杠控制的字符转换

控制字符 作用
\a 输出警告
\b 退格键,也就算向左删除键
\n 换行符号
\r 回车
\t 制表符,也就是tab键
\v 垂直制表符
\0nnn 按照八进制ASCII码表输出字符 ,其中0为数字零,nnn是三位八进制数
\xhh 按照十六进制ASCII码表输出字符,其中hh是两位十六进制数

带颜色输出

 echo -e "\e[1;31m woc \e[0m"

第一个脚本

vim hello.sh
#!/bin/bahs
#第一个shell 脚本
echo -e "\e[1;34m 第一个脚本\e[0m"

执行脚本

赋予执行权限,直接运行

chmod 755 hello.sh
hello.sh

通过bash 调用执行脚本

bash hello.sh

Bash的基本功能

1:命令别命与快捷键 alias 查看系统中的所有的命令别名

alias 
image.png

alias 别名 =‘原命令’ 设定命令别名

别命永久生效与删除
vi ~/.bashrc 写入环境变量配置文件

~ 表示家目录 :root 用户就root/.bashrc

vi /root/.bahsrc

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
#新加别命
alias vi='vim' 
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
~                                                                                                          
~                  

需要直接生效执行

source .bashrc

命令生效顺序

1.第一顺位执行用绝对路径或相对路径执行的命令
2.第二顺位执行别名
3.第三顺位执行Bash的内部命令
4.第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令。

删除名别 命令格式: unalias 别名

常用快捷键

快捷键组合 作用
ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索

历史命令

history [选项][历史命令保存文件]
选项:-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件 ~/.bahs_history


image.png

wc [选项][文件名]

选项:
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。(统计单词数)
-L 打印最长行的长度。
-help 显示帮助信息
--version 显示版本信息

image.png

管道符

image.png
多命令执行符 格式 作用
: 命令1:命令2 多个命令顺序执行,命令之间没有任何逻辑联系
&& 命令1&&命令2 逻辑与:当命令1正确执行,则命令2才会执行,当命令1执行不正确,则命令2不会执行
|| 命令1&&命令2 逻辑或:当命令1执行不正确,则命令2才会执行,当命令1执行正确执行,则命令2不会执行

netstat -an 命令能看到所有和本地计算机建立连接的IP

netstat -an

image.png

通过| grep ESTABLISHED 代表一个打开的连接

netstat -an | grep ESTABLISHED

image.png

通配符

通配符 作用
? 匹配一个任意字符
* 可以匹配任何内容
[] 匹配中括号中任意一个字符,列如:[abc]代表一定匹配一个字符,或者是a或者b或者c
[-] 匹配中括号中任意一个字符,-代表一个范围。例如:[a-z]代表匹配一个小写字母
[^] 逻辑非,表示匹配不是中括号内的一个字符,例如:[^0-9]代表匹配一个不是数字的字符

Bash中其它特殊字符

https://www.cnblogs.com/duhuo/p/7133204.html

你可能感兴趣的:(linux学习笔记(2)shell 基础)