作为一名合格的 Linux 系统管理员, 每天接触使用最多的莫过于 Linux 命令了. 很多人喜欢 Linux, 因为 Linux 命令短小但却功能强大. 在工作中经常使用的命令有很多, 对于那些你未使用过的呢? 今天小编就跟大家分享自己工作中总结的 8 个超级好用, 但鲜为人用的 Linux 命令, 希望对大家有帮助.
1. fc
命令用途: 编辑最近的一条命令并自动执行该命令
适用场景: 执行了一条很长的命令, 然而命令敲错执行失败, 需要修正后再次执行.
使用示例:
(1)执行了 wget 命令, 因参数敲错, 导致命令并没有执行成功.
(2)执行 fc 命令, 打开编辑器后对命令进行修改. 修改为正确命令后保存, 继而自动执行.
2. disown
命令用途: 将任务从 "后台任务" 列表 (jobs 命令的返回结果) 之中移除, 阻止当前 shell 在终止登录会话时向每个指定作业发送 HUP 信号.
命令用法: 移出最近一个正在执行的后台任务 $ disown# 移出所有正在执行的后台任务 $ disown -r 移出所有后台任务 $ disown -a# 不移出后台任务, 但是让它们不会收到 SIGHUP 信号 $ disown -h
使用示例:
3. ctrl+x+e
命令用途: 打开编辑器输入命令并自动执行该命令.
使用场景: 一次执行多条命令.
使用示例:
(1)执行 ctrl+x+e 快捷键, 即可打开编辑器. 输入需要执行的命令后, 保存退出. 则输入的命令将被依次.
注意事项:
如未安装 Emacs 编辑器, 则执行 ctrl+x+e 后, 会报错:"-bash: emacs: command not found".
可在 / etc/bashrc 文件中添加变量设置 "EDITOR=vim", 将 ctrl+x+e 调用的默认编辑器修改为已安装的编辑器, 如 VIM.
4. 命令前加空格
命令用途: 隐藏所运行的命令, 使其不被记录到历史命令中.
使用场景: 含有密码等敏感信息的命令, 出于安全性考虑不希望其被显示到历史命令中.
使用示例: 为用户设置密码, 但因密码为敏感信息, 故在命令前加上空格. 注意: echo 前有一个空格.
注意事项: 需要将 HISTCONTROL 变量值设置为 ignorespace 或者 ignoreboth 才会起作用.
- echo HISTCONTROL=ignorespace >> /etc/bashrc
- 5. !!(2 个感叹号)
命令用途: 调用最近一次运行的命令
使用场景: 需要再次执行上一条命令
使用示例: 使用普通用户身份查看 / etc/shadow 文件报错, 命令前加 sudo, 以 root 用户身份查看 / etc/shadow 文件.
6. 一次创建多个目录或文件
使用示例 1: 在当前目录下创建多级目录.
使用示例 2: 创建多个文件.
7. SSH 隧道
隧道用途: 保证 MySQL 客户端和服务端之间的安全通讯
使用示例: 47.102.150.235 为 MySQL 服务端, 目前所登录服务器 SS-Free 为 MySQL 客户端.
这两台服务器之间只能通过公网进行通讯.
暴露在公网的 MySQL 通讯及不安全, 故利用 SSH, 搭建出来一条隧道, 然后将 MySQL 客户端和 MySQL 服务端通过 SSH 隧道连接起来.
本地 9906 端口连接 47.102.150.235 服务器的 3306 端口.
则访问本机 9906 端口时, 通讯数据将会被转发到 47.102.150.235 的 3306 端口.
查看 MySQL 客户端监听, 可看到已监听 9906 端口. 并且可通过 9906 端口访问 MySQL 服务端.
8. tee
命令用途: 从标准输入读取, 然后写入标准输出和文件
使用场景: 想手动跟踪命令的输出内容, 同时又想将输出的内容写入文件.
使用示例 1:
使用示例 2:
来源: http://os.51cto.com/art/201904/594750.htm