bash 学习
Bash常用命令
-
$
符号修饰的字符都表示变量 -
设置命令简称
alias
直接设定 -
echo
打印/显示 变量 举例echo $PATH
自定义变量的声明: 直接在终端中输入name=VBird
变量声明不能在等号两边加空格,变量名不能够以数字开头
unset
取消设置的变量env
: 查看当前环境中所有的环境变量, 环境变量多用大写字母表示export
将自定义变量转变为环境变量, 可以让子进程进行调用
配置文件
- login 与 non-login shell: 在shell当中登录过后, 在shell当中没有登录过 non-login
/etc/profile
: 是系统整体的设置, 最好不要修改~/.bash_profile
,~/.bash_login
,~/.profile
属于用户的个人设置, 可以修改。先读etc/profile
再读~/.bash_profile
source
: 配置好了文件之后 用source
进行读取和更新
数据流重定向
>
: 覆盖原文 输出 流程: 1. 如果改文件不存在, 系统就会自动创建一个新的文件 2. 如果这个文件存在, 那么系统就先将该文件内容清空, 然后再将数据写入>>
: 非覆盖 输出 流程: 1. 如果改文件不存在, 系统就会自动创建一个新的文件 2. 如果这个文件存在, 那么系统就先将该文件内容保留, 在原文件内容的末尾将新的数据写入- 标准错误输出:
2>
和2>>
用来将错误信息保留 - 还可以同时保留stdout 和 stderr
find /home -name .bashrc > list 2>&1
必须要是用&
作为特殊字符, 否则会是的两条数据同时写入一个文件造成混乱
管道命令: 能够接受stdout 的命令
|
是一个界定符号, 左面命令的结果可以传递给下面的命令
选取命令: cut, grep
选取命令通常是针对于 行来进行分析的, 而不是根据整篇信息, 所以含有同样信息的不同行可能会重复出现
cut
: 将一段数据的某一段信息单独提取出来 参数: -d
后面接分割字符 -f
取出第几段 例子: echo $PATH | cut -d ':' -f 5
取出PATH变量的第五个路径以后的内容
grep
: 如果某一行中存在我们想要的部分, 就直接将其提取出来
... | grep less
将输出变为滚动查看 内容较多的时候可以使用
程序管理
进程管理
ps aux
: 查看系统所有的进程状态
ps axjf
显示出来的数据:
F
: 表示进程的权限
S
: 表示进程的状态: R:Running 正在运行中 S: Sleep 睡眠中 D: 不可被唤醒的睡眠状态 T: Stop 停止 Z: Zombie 僵尸状态, 进程已经终止但无法被删除至内存外
UID/PID/PPID
: 被UID所拥有, PID: 父进程 PPID: 父进程的父进程
TTY
: 登录者的终端机位置
TIME
: 进程实际话费CPU运行的时间
CMD
: 造成此进程的触发程序命令
kill
将进程杀死 参数: 1
: 启动被终止的进程 9
: 强制关闭 15
: 正常关闭 和 Ctrl
+ C
有同样的效果
killall
killall -9 httpd