基础shell小技巧01

1. 命令替换

shell脚本中最有用的特性之一是可以从命令输出中提取信息并将其赋给变量。把输出赋给变量之后,就可以随意在脚本中使用了。在脚本中处理数据时,这个特性显得尤为方便。

有两种方法可以将命令输出赋给变量。

·反引号(`)

·$()格式

# !/bin/bash

testing=$(date)
echo "the date and time are:"$testing

2. 输出重定向

最基本的重定向会将命令的输出发送至文件。bash shell使用大于号(>)来实现该操作:

command > outputfile
# 下面是demo
date > date.txt

如果输出文件已存在,则重定向运算符会用新数据覆盖已有的文件。

有时,你可能并不想覆盖文件原有内容,而是想将命令输出追加到已有文件中,例如,你正在创建一个记录系统操作的日志文件。在这种情况下,可以用双大于号(>>)来追加数据。

3. 输入重定向

输入重定向和输出重定向正好相反。输入重定向会将文件的内容重定向至命令,而不是将命令输出重定向至文件。

输入重定向运算符是小于号(<):

command < inputfile
# 下面是demo
wc < date.txt

4. 管道

有时候,你需要将一个命令的输出作为另一个命令的输入。这可以通过重定向来实现,只是略显笨拙。

这种方法的确管用,但仍然是一种比较烦琐的信息生成方式。无须将命令输出重定向至文件,可以将其直接传给另一个命令。这个过程称为管道连接(piping)。

command1 | command2
# 下面是demo
ps -ef | grep 'java'

首先用ps -ef查看所有进程信息并将此作为参数传递给grep命令,从中查询java进程。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhixuChen200

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值