Shell基础

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell基础相关的知识,希望对你有一定的参考价值。

一、历史命令history

  • history命令
history -c 清空历史命令

history -w 把缓存(当前会话)中的历史命令写入到历史命令保存文件中
~/.bash_history

常见的用于保存用的环境信息文件:

~/.bashrc
该文件包含专用于某个用户的bash shell的bash信息,当该用户登录时以及每次打开新的shell时,该文件被读取.

/etc/profile
设定的变量(全局)的可以作用于任何用户

二、命令别名

  • 1.命令别名与快捷键
 * 查看别名 alias

* 设定别名
  alias 别名=‘原命令’
  alias ls=‘ls --color=auto‘;

* 设置永久生效的别名
    vim ~/.bashrc #用于保存当前用户的环境信息
    alias vi=‘vim‘
    source  ~/.bashrc #保存的环境信息立即生效

    *删除别名
    unalias 别名
查看环境变量位置
echo $PATH

三、输入输出重定向

键盘 设备文件名 /dev/stdin 文件描述符0 标准输入
显示器 设备文件名 /dev/stdout 文件描述符1 标准输出
显示器 设备文件名 /dev/stdeoor 文件描述符2 标准错误输出

  • 输出重定向

输出到屏幕改为输出到文件中,称之为输出重定向。

类型

标准输出重定向 命令>文件(覆盖)
命令>>文件(追加)

标准错误输出重定向 错误命令 2>文件(覆盖)
错误命令 2>>文件(追加)

#注意,2为标准错误输出,错误输出方向箭头后面没有空格

  • 1.正确和错误同时输出保存到同一个文件
ifconfig >> test 2.log   2>&1
注释:正确写到test2.log,错误写到正确里面,故正确错误同时写到test2.log

另外一种写法
ifconfig &>test2.log
  • 2.正确和错误分开保存
命令>>正确文件  2>>错误文件
  • 3.不想输出到设备,也不想写入到文件
ls  &>/dev/null
注意:特殊设备 /dev/null  系统黑洞
  • 输入重定向
    wc [选项][文件名]
    option:
    -c 统计字节数
    -w 统计单词数
    -l 统计字节数
wc 
asd
asd
asd
ctrl+d

wc < ./error.log
wc ./error.log

wc <<EOF
asd
asd
dfg
EOF

四、多命令顺序执行

  • ; 顺序执行(无论中间有没有出错,不影响后续命令执行)
ls;date;pwd
  • && 逻辑与
命令1&&命令2
命令1正确执行,命令2才会执行
命令1执行出错,命令2不会执行
  • || 逻辑或
命令1 || 命令2
命令1正确执行,命令2不会执行
命令1执行出错,命令2才会执行

检查命令是否会正确执行
ls && echo yes || echo no

六、管道符

命令1 | 命令2
命令1的结果作为命令2的操作对象

ls /etc | more
cat ./error.log | wc

netstat -tlun | grep ESTABLISHED | wc -l
查看链接到本机人数

以上是关于Shell基础的主要内容,如果未能解决你的问题,请参考以下文章

Linux bash基础特性二

逆向及Bof基础实践

20155307刘浩《网络对抗》逆向及Bof基础

代码片段:Shell脚本实现重复执行和多进程

20155311高梓云《网络对抗》逆向及Bof基础

20145301赵嘉鑫《网络对抗》逆向及Bof基础