menu Chancel's Blog
rss_feed lightbulb_outline

Linux不常见命令列表

类型:Linux
创建时间:2021-06-16 10:07:04
更新时间:2021-06-16 10:07:04
类型:Linux
更新时间:2021-06-16 10:07:04

输出显示相关

  1. 将输出格式化为一个表
    • mount | column -t
  2. 让显示结果排序
    • ps aux | sort -nk 4
  3. 复制命令输出到粘贴板
    • php -i | xsel -b

IO操作相关

  1. 切换到之前的目录
    • cd -
  2. 创建指定大小的文件
    • dd if=/dev/zero of=out.txt bs=1M count=10
  3. 批量下载文件
    • cat urls.txt | xargs wget
  4. 查看占用磁盘的文件
    • du -hsx * | sort -rh | head -6
  5. 查看文件的详细信息
    • stat README.md

指令技巧

  1. 以超级管理员权限运行上一个指令
    • sudo !!
  2. 以超级管理员重新运行历史第X条命令
    • sudo !156
  3. 执行最近历史列表中以这个字符串开头的命令
    • !string
  4. 执行最近历史列表中,包含这个字符串的命令
    • !?string
  5. 记录当前会话所输入的所有指令(从输入这个指令开始记录)
    • script [file]

键盘技巧

  1. 移动光标
    • Ctrl - A 移动光标到行首
    • Ctrl - E 移动光标到行尾
    • Ctrl - L 清空屏幕,移动光标到左上角(形同Clear命令)
  2. 修改文本
    • Ctrl - T 交换当前光标前的2个字符位置
    • Alt - T 交换当前光标前后2个单词位置(区分单词通常是“-”或者“空格”)
    • Alt - L 把从光标位置到字尾的字符转换成小写字母(Lower)
    • Alt - U 把从光标位置到字尾的字符转换成大写字母(Upper)
  3. 剪切和粘贴文本
    • Ctrl - K 从当前光标位置剪切至行尾的文本
    • Ctrl - U 从当前光标位置剪切至行首的文本
    • Alt - D 从当前光标位置剪切至词尾的文本
    • Alt - Backspace 从当前光标位置剪切至词头的文本,如果光标在一个单词的开头,剪切前一个单词
    • Ctrl - Y 把剪切环中的文本粘贴到光标位置
  4. 其他操作技巧
    • Ctrl - R 增量搜索(输入你要寻找的Linux命令行,输入的越多精准度越高)

防火墙Firewalld的常见操作

# 查看当前默认的规则名称
firewall-cmd --get-zones
# 查看支持直接开放对应服务的端口列表
firewall-cmd --get-services
# 查看开放的服务列表
firewall-cmd --list-services
# 开放一个服务
firewall-cmd --add-service=http  --permanent
# 查看所有已经打开的端口(不包含指定打开的服务)
firewall-cmd --list-ports
# 查看/开放/删除一个端口
firewall-cmd --zone= public --query-port=80/tcp
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone= public --remove-port=80/tcp --permanent
# 应用所做更改
firewall-cmd --reload

Curl操作

# 如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地
curl "http://www.example.com" 

# 显示全部信息
curl -i "http://www.example.com"  

# 只显示头部信息
curl -l "http://www.example.com" 

# 显示get请求全过程解析
curl -v "http://www.example.com" 

# 模拟带Json数据的POST请求
curl -H "Content-Type:application/json" -X POST --data '{"index":"1503652289983"}' http://192.168.1.1/index

# 模拟表单提交
curl -d "param1=value1&param2=value2" http://www.example.com/index

# 模拟带Cookies提交
curl -v --cookie "xxxxxxxxxxxxxxxxxx" https://www.example.com

# 模拟文件提交
curl -F "myfile=@hellocurl.zip" "www.example.com/upload"

nmap 扫描服务器端口开放情况

# 普通扫描(需要三次握手,容易被判断为攻击)
nmap -p 1-200 [server_ip]

# 快速扫描(不需要三次握手,需要ROOT权限执行,)
nmap -sS -p 1-200 [server_ip]

# 注:
- sU:寻找目标主机打开的UDP端口
- sF:tcp的扫描一种,发送一个FIN标志的数据包

用户操作

# 该命令会创建用户/用户组/用户目录/初始化用户环境等一系列操作,是 **创建一个可以登录系统的正常用户**
adduser [user_name]
# 该命令会创建用户/用户组,然后什么也不做,是 **创建一个不可以登录系统的系统用户**
useradd [user_name]

# 修改设置用户密码
passwd [user_name]

# 修改用户名称(登录名称)
usermod –l [new_user_name] [old_user_name]

# 删除用户,如需删除用户信息如Home目录等需要添加 -r 参数
userdel [user_name] 

# 锁定/解锁用户
usermod -L [user_name]
usermod -U [user_name]

# 查看用户信息
id [user_name]

# 用户组创建
groupadd –g [g_id] [group_name]

# 添加用户到用户组
usermod -a -G [group_name] [user_name] 
gpasswd -a [user_name] [group_name] 

# 从用户组踢出用户
gpasswd -d [user_name] [group_name]

# 删除用户组
groupdel [group_name]

[[replyMessage== null?"发表评论":"@" + replyMessage.m_author]]

account_circle
email
web_asset
textsms

评论列表([[messageList.data.items.length]])

[[messageItem.m_author]] [[messageItem.m_author]]
[[messageItem.create_time]]
[[messageItem.m_environ.browser]] [[messageItem.m_environ.os]] [[messageItem.m_environ.device]]
[[subMessage.m_author]] [[subMessage.m_author]] @ [[subMessage.parent_message.m_author]] [[subMessage.parent_message.m_author]]
[[subMessage.create_time]]
[[subMessage.m_environ.browser]] [[subMessage.m_environ.os]] [[subMessage.m_environ.device]]