Linux命令行技巧

Linux命令行技巧

简介

总结了一下工作中常用的快捷命令与使用技巧,帮助大家提高工作效率与命令行使用体验。

目录切换(Navigating Directories)

cd /etc
# 返回之前的目录,可以回到/etc目录
# -相当于变量$OLDPWD
cd -
# 进入home目录
cd ~
# 不加参数,也可以直接进入当前用户的home目录
cd

清屏(Clearing the Terminal)

# 清空屏幕
clear
# 或者使用快捷键
Ctrl + L
# 清空屏幕后,其实可以用鼠标滚轮,向上找到清空的内容
# reset命令也可以达到上述清屏效果,但是鼠标滚轮向上翻,是没有记录的
reset

其他切换目录的命令(Navigating Directories with a Different Tool)

更详细操作可以参考Linux中的pushd和popd

# 使用pushd与popd切换目录,dirs可以查看目录栈内容
# 将指定目录压栈,执行成功后,也会切换到该目录
push /
# 查看目录栈
dirs -v
# 出栈操作,出栈后,当前目录会与栈顶目录保持一致
popd

dirs命令参数及含义

选项含义
-p每行显示一条记录
-v每行显示一条记录,同时展示该记录在栈中的index
-c清空目录栈

最小化应用(Minimizing an App)

# 打开任意文件
vim /something/file
# 使用Ctrl + Z命令将当前程序“最小化”
Ctrl + Z
# htop查看计算机进程信息,同样可以最小化

复原最小化的应用(Restoring an App)

# fg(front-ground)复原“缩小后的程序”
fg

重复上一个使用sudo执行的命令(Repeating the Last Command with sudo)

# 使用某些命令,忘记在前面添加sudo,而执行失败时,可以使用如下命令重复执行
sudo !!

浏览命令执行历史(Review the Command History)

# 搜索命令行历史
Ctrl + R
# 输入一些命令关键字,可以查找到之前输入的命令
# 例如,我这里输入'docker e',就会提示出相关的命令历史。直接回车,就可以重复执行这条命令。
Last login: Tue Nov  1 20:40:40 2022 from 192.168.3.209
(reverse-i-search)`docker e': docker exec -it 47505843a62c /bin/bash

image-20221106171715553

一个更好的方式执行历史命令(A Better Way to Run Previous Commands)

# 查看命令行历史
history
# 重复执行某个命令
!<命令序号>
# 例如,如下方式可以直接执行序号为139的命令'll'
!139

image-20221106172455433

使用时间戳优化历史命令的查看(Making Previous History Search Even Better With Timestamps)

# 定义历史命令查看的格式
HISTTIMEFORMAT="%Y-%m-%d %T "
# 重新执行history命令,即可看到每个命令执行的具体时间
history

一些没用但酷炫的命令(Take the Blue Pill)

# 黑客帝国代码雨
cmatric

快速调整字体大小(Adjust Font Size)

Ctrl + 鼠标滚轮

清空当前正在输入的命令行(Clearing a Line)

Ctrl + U (Undo):从光标处向前删除所有字符

Ctrl + W (Word):从光标处向前删除一个单词(以空格为分割符)

Ctrl + K (Kill):从光标处向后删除所有字符

Ctrl + Y (Yank):将Ctrl + UCtrl + K删除的字符,恢复原状

移动光标到命令行开头(Moving to the Front of the Line)

Ctrl + A:移动光标到开头,与Home键效果相同

移动光标到命令行末尾(Moving to the End of the Line)

Ctrl + E:移动光标到末尾,与End键效果相同

其他移动光标快捷键

Ctrl + ←、→:将光标移动一个单词的距离

多命令连接在一起执行(Chaining Commands Together)

# 使用';'隔开命令,无论第一个命令是否成功,都会执行第二个命令
command1 ; command2
# 举例说明, 两个命令均会执行(即使第一个命令报错)
ls -l ; echo "sucessful"
# 使用'&&'隔开命令,只有第一个命令执行成功,才会执行第二个命令
command1 && command2
# 举例说明,第一个命令执行报错,第二个命令不会执行
ls -l /this/doesnt/exist && echo "sucessful"

实时查看文件(Tailing Files)

# 从文件末尾实时查看文件内容
tail -f /path/to/file
# Ctrl + C 停止查看

清空文件(Truncating Files)

一般有如下选择,可以将文件内容清空:

  1. 删除后,重建

  2. 使用truncate命令

    truncate -s 0 /path/to/file
    
  3. 使用echo

    echo "" > /path/to/file
    # 或者,我比较喜欢的用法,省略echo命令
    > /path/to/file
    

使用column命令格式化输出(Using the Column Command)

mount | column -t

总结

参考

  1. 18 Commands That Will Change The Way You Use Linux Forever
  2. Linux中的pushd和popd
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值