将grep命令缩短为80个字符Bash

时间:2014-09-15 20:51:05

标签: bash grep newline ifs

我正在编写一个Bash脚本并且有一些非常长的grep命令,我想缩短到80个字符以获得更好的样式。这是我现在正在使用的一个

omR_pdisk="omreport storage pdisk controller=0";
${omR_pdisk} vdisk="$vdisk_id" | grep ^Vendor ID | sed 's,.* : ,,g' >> "$results"

我需要将第二行减少到80个字符。到目前为止我已经尝试过一些东西,但我一直都会遇到错误。我尝试了以下

${omR_pdisk} vdisk="$vdisk_id" | 
grep ^Vendor ID | 
sed 's,.* : ,,g' >> "$results"

我试过这个

${omR_pdisk} vdisk="$vdisk_id" \
| grep ^Vendor ID \
| sed 's,.* : ,,g' >> "$results"

我也试过

getVendorID="grep ^Vendor ID | sed 's,.* : ,,g'"
${omR_pdisk} vdisk="$vdisk_id" | "$getVendorID" >> "$results"

这些都不起作用。任何帮助表示赞赏

1 个答案:

答案 0 :(得分:0)

您可以使用反斜杠断开命令行,但必须先插入一些指示延续的运算符。例如,这应该有效:

${omR_pdisk} vdisk="$vdisk_id" | \
    grep ^Vendor ID | \
    sed 's,.* : ,,g' >> "$results"

(至少语法。不知道代码实际上做了什么。)