侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

学会这8个技巧让你成为一个超强的Linux终端用户

linux  /  管理员 发布于 7年前   153

使用Linux终端不仅仅是只输入命令。学习这些基本的技巧,你就会逐渐掌握Bash shell,这个在大多数Linux发行版上默认使用的终端工具。

这篇文章是写给缺乏经验的新手的,我相信大多数高级用户已经知道了所有的这些技巧。但是,你仍然可以看看,也许能学到你一直以来都忽略了的东西。

Tab键自动补全

使用Tab键自动补全是基本的技巧。它能节省你很多时间,而且当你不确定一个文件名或者命令怎么拼写时,它也及其有用。

举个例子,比如在当前目录你有一个文件,文件名是“really long file nam”,你想删除这个文件。你可以输入整个文件名,但是你得小心输错空格符(需要用\转义)。如果你输入”rm r”,然后按Tab键,Bash会自动为你补全这个文件的名字。

当然,如果当前目录中你有很多以字母r开头的文件,Bash就会不知道你指的是哪一个。比如当前目录你有另一个名字叫做“really very long file name”的文,当你按Tab键时,Bash会补全到“really\”部分,因为两个文件都是以这开头的。然后,再按Tab键你会看到所有能匹配该开头的文件列表,如下图。

接着输入你想要的文件名然后按Tab键。这样,当我们输“l”然后按Tab键时,Bash会自动补全我们想要的文件名。

这种方法对于输入命令来说同样适用。当你不确定你想要的命令是什么,只记得以”gnome”开头时,输入“gnome”然后按Tab键,你就会看到所有可能的结果。

管道命令

管道命令允许你把一个命令的输出结果转移给另一个命令。在Unix的设计哲学中,每个程序都是只有少而精的功能。举个例子,”ls”命令会显示当前目录中所有的文件列表,而”grep”命令会在制定的地方搜索输入的字符串。

把这两者通过管道命令(用“|”符号表示)结合起来,你就可以在当前目录搜索某个文件了,以下命令用来搜索“really”:

ls | grep really

通配符

星号”*”是一个可以匹配任何东西的通配符。比如,如果我们想把”really long file name“和”really very long file name“从当前目录都删了,我们可以使用如下命令:

rm really*name
这个命令删除了所有以really开头,以name结尾的文件。如果你用”rm *”命令,将会删除该目录下的所有文件,所有需谨慎使用。

输出重定向

“〉”字符可以把一个命令的输出结果重定向到一个文件,而不需要额外使用另一个命令。比如,下图的代码使用”ls”命令来列出当前目录的所有文件,并把输出的列表输入到了一个名为”file1“的文件,而不是仅仅输出显示在终端上。

ls > file1

命令行历史

Bash会记得你使用过的命令的历史。你可以使用向上键和向下键来翻阅你已经使用过的命令。使用”history”命令会把历史命令都打印出来,因此你可以使用管道命令来搜索你最近使用的命令。

关于命令行历史,还有很多可以使用的技巧

~,.& ..

波浪符”~”代表当前用户的主目录。所以,你可以使用”cd ~”切换到你的主目录,而不用输入”cd /home/name”。这对相对路径同样使用,比如”cd ~/Desktop”会切换到当前用户的桌面目录。

与之类似的是,”.”代表当前目录,”..”代表父级目录。所有,”cd ..”会跳到父级目录。这对相对路径同样有效,比如你在Desktop目录,你想切换到与Desktop目录同级的Document目录,你可以使用”cd ../Documents”命令。

后台运行命令

默认情况下,Bash会在当前终端下运行你的命令。正常来说没有问题,但是当你想同时运行一个应用程序而又要继续使用该终端时怎么办?比如你输入”firefox”命令来运行火狐浏览器,火狐将会占据你的终端并且显示一些错误信息等输出,直到你关闭它。但是加一个”&”符号在命令后面会使Bash在后台运行该程序:

firefox &

条件执行

你同样可以用Bash运行两个命令,一个接着一个。第二个命令只有当第一个命令成功运行完毕后才会运行。要想做到这样,把两个命令在同一行中用”&&”分隔即可。

比如,”sleep”命令会以秒为单位接受一个参数,然后倒计时,允许结束。单独来用的话,该命令没有任何用处,但是你可以把它作为运行下一个程序之前的延时。下面的命令会停5秒然后运行gnome的截屏工具:

sleep 5 && gnome-screenshot


  • 上一条:
    Linux的重启命令有哪些? 五个Linux的重启命令的具体使用说明
    下一条:
    linux系统 如何在Crunchbang下恢复Openbox的默认配置
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在Linux系统中使用Iptables实现流量转发功能流程步骤(0个评论)
    • vim学习笔记-入门级需要了解的一些快捷键(0个评论)
    • 在centos7系统中实现分区并格式化挂载一块硬盘到/data目录流程步骤(0个评论)
    • 在Linux系统种查看某一个进程所占用的内存命令(0个评论)
    • Linux中grep命令中的10种高级用法浅析(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-06
    • 2023-07
    • 2023-10
    • 2023-12
    • 2024-01
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客