Bash 使用技巧

Bash 是我们经常与之打交道的 Shell 程序,本文针对其使用技巧行了搜。相信在你看过这些内容之后,定会在 Bash 的世界里游刃有余。

史中行命令

候,我需要在 Bash 中重复执行先前的命令。你当然可以使用上方向看之前曾运行的命令。但里有一更好的方式:你可以按 Ctrl + r 键进史搜索模式,一旦找到需要重复执行的命令,按回车键即可。

命令参数

先来看一个例子:

mkdir /path/to/exampledir
cd !$

本例中,第一行命令将建一个目,而第二行的命令则转刚创建的目里,“!$”的作用就是重前一个命令的参数。事上,不是命令的 参数可以重,命令的选项可以。另外,Esc + . 快捷可以切换这些命令参数或选项

用于编辑的快捷

  • Ctrl + a:将光定位到命令的开头
  • Ctrl + e:与上一个快捷相反,将光定位到命令的
  • Ctrl + u:剪切光之前的内容
  • Ctrl + k:与上一个快捷相反,剪切光之后的内容
  • Ctrl + y:粘以上两个快捷所剪切的内容
  • Ctrl + t:交之前两个字符的
  • Ctrl + w除光的参数(选项)或内容
  • Ctrl + l:清屏

理作

首先,使用 Ctrl + z 快捷可以正在行的命令挂起。如果要让该进程在后台行,那可以 bg 命令。而 fg 命令可以让该进程重新回到 前台来。使用 jobs 命令能够查看到哪些程在后台行。

你也可以在 fg bg 命令中使用作 id,如:

fg %3

又如:

bg %7

使用置

  • 命令置

先看例子:

du -h -a -c $(find . -name *.conf 2>&-)

注意 $() 中的部分,将告 Bash 运行 find 命令,然后把返回的果作 du 的参数。

  • 程置

仍然先看例子:

diff <(ps axo comm) <(ssh user@host ps axo comm)

命令将比本地系程系中正在运行的程。注意 <() 中的部分。

  • xargs

看例:

find . -name *.conf -print0 | xargs -0 grep -l -Z mem_limit | xargs -0 -i cp {} {}.bak

命令将份当前目中的所有 .conf 文件。

使用管道

下面是一个简单的使用管道的例子:

ps aux | grep init

里,“|”操作符将 ps aux 出重定向 grep init

下面有两个稍微复杂点的例子:

ps aux | tee filename | grep init

及:

ps aux | tee -a filename | grep init

出保存文件

你可以将命令的出内容保存到一个文件中,例如下:

ps aux > filename

注意其中的“>”符号。

你也可以将出内容追加到一个已存在的文件中:

ps aux >> filename

可以分割一个较长的行:

command1 | command2 | ... | commandN > tempfile1
cat tempfile1 | command1 | command2 | ... | commandN > tempfile2

准流:重定向与

重定向流的例子:

ps aux 2>&1 | grep init

里的数字代表:

  • 0stdin
  • 1stdout
  • 2sterr

上面的命令中,“grep init”搜索“ps aux”出,而且搜索 sterr 出。

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值