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)。文章来源:https://www.toymoban.com/news/detail-669410.html
command1 | command2
# 下面是demo
ps -ef | grep 'java'
首先用ps -ef
查看所有进程信息并将此作为参数传递给grep
命令,从中查询java进程。文章来源地址https://www.toymoban.com/news/detail-669410.html
到了这里,关于基础shell小技巧01的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!