小编Sam*_*ynn的帖子

使用 sed 命令应用条件来检查模式是否已匹配

我正在搜索字符串::=BEGIN,我想应用一个条件来检查是否找到了该词。

所以,我的意思是这样的:

if (sed command does find a match for "::=BEGIN")
then i=1 
else i=0
Run Code Online (Sandbox Code Playgroud)

另外,我希望将 1(找到是)和 0(未找到)放入变量“i”中。

请帮帮我。还提供解决方案的解释!谢谢!

command-line bash sed

8
推荐指数
2
解决办法
3万
查看次数

如何使用命令行在第二次出现引号后删除所有内容?

我在一个变量中有这家商店

   sCellEventTrap-03-28 TRAP-TYPE -- CAC 代码:00
        企业康柏
        变量 { scellNameDateTime,
                     scellSWComponent,
                     scellE代码,
                     细胞CAC,
                     细胞EIP}
        描述
             “严重性:正常——本质上是信息性的。在定期驱动器检查期间,物理磁盘驱动器遇到 ID 块不一致。”
           --#TYPE "StorageCell 事件"
           --#SUMMARY "SCellName-TimeDate %s : SWCID %d : ECode: %d : CAC %d : EIP %d。"
           --#ARGUMENTS {0,1,2,3,4,}
           --#SEVERITY 信息
           --#TIMEINDEX 136
           --#状态警告
        ::= 13600808

我要削减一切,直到第二次出现". 所以这会给我:

 sCellEventTrap-03-28 TRAP-TYPE -- CAC 代码:00
        企业康柏
        变量 { scellNameDateTime,
                     scellSWComponent,
                     scellE代码,
                     细胞CAC,
                     细胞EIP}
        描述
             “严重性:正常——本质上是信息性的。在定期驱动器检查期间,物理磁盘驱动器遇到 ID 块不一致。”

另一个例子

    genericSanEvent 陷阱类型
        企业 hpSanManager
        变量 {severityLevel, category, id,
                     msgString、联系人姓名、联系人电子邮件、
                     联系工作电话,联系家庭电话, 
                     联系寻呼机,联系传真 }
        描述 …

command-line bash scripts text-processing

8
推荐指数
1
解决办法
9486
查看次数

Ubuntu 14.10 中的无线不稳定

升级到 Ubuntu 14.10 后,我的无线连接变得不稳定。
每隔 2 到 3 分钟,网络就会停止工作(即,我无法加载任何页面),即使网络管理器显示我已连接。
所以我必须手动断开它并再次连接,以使其再次工作,但它又只能再工作 2-3 分钟。

我使用的是带Intel Corporation Wireless 7260 (rev 73)卡的戴尔 Inspiron 7357 。在 Ubuntu 14.04 中,适配器运行良好。

我没有看到崩溃或错误dmesg

$ dmesg | grep iw
[    3.636727] iwlwifi 0000:02:00.0: irq 62 for MSI/MSI-X
[    3.709654] iwlwifi 0000:02:00.0: loaded firmware version 25.222.9.0 op_mode iwlmvm
[    3.742636] iwlwifi 0000:02:00.0: Detected Intel(R) Wireless N 7260, REV=0x144
[    3.743790] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
[    3.744023] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
[    3.940407] …
Run Code Online (Sandbox Code Playgroud)

wireless networking intel-wireless 14.10

5
推荐指数
1
解决办法
4555
查看次数

比较 2 个数字并仅复制相似的部分 sed/grep/awk

假设我有一个名为a. 有一个阵列中的2项a[1]a[2]。所以每个元素包含一个数字值。这两个值都有相似的起始数字,但它们有不同的结尾。我将复制类似的部分并忽略其余部分。

所以作为一个例子

$ echo ${a[1]}
.1.3.6.1.4.1.232.13600256

$ echo ${a[2]}
.1.3.6.1.4.1.232.13600276
Run Code Online (Sandbox Code Playgroud)

我需要一些命令来比较这些元素,然后只复制相似的部分,直到第一个不匹配的字段。即,在这个例子中

输出

similar part is .1.3.6.1.4.1.232
Run Code Online (Sandbox Code Playgroud)

另一个例子

$ echo ${a[1]}
.1.3.6.1.4.1.759.2344.454545

$ echo ${a[2]}
.1.3.6.1.4.1.759.3234.454545
Run Code Online (Sandbox Code Playgroud)

此示例的输出

similar part is .1.3.6.1.4.1.759
Run Code Online (Sandbox Code Playgroud)

bash scripts

5
推荐指数
1
解决办法
525
查看次数

Passing Variable into awk gsub

I have this command
Here

vovar=OBJECTS
prvar="$(awk '/'"$vovar"'/,/}/ {gsub("$vovar"," "); gsub("}",": %s,"); gsub("{"," ");gsub(",",": %s,");print}' temp1)"

Contents of temp1

ciscoFlashCopyCompletionTrap NOTIFICATION-TYPE
        OBJECTS   
                { 
                ciscoFlashCopyStatus  
                }
        STATUS  current
        DESCRIPTION
                "A ciscoFlashCopyCompletionTrap is sent at the 
                completion of a flash copy operation if such a trap 
                was requested when the operation was initiated.
                "
        ::= { ciscoFlashMIBTraps 1 }

What I want the command to do

                ciscoFlashCopyStatus  
                : %s: %s,

What it actually does

        OBJECTS   

                ciscoFlashCopyStatus  
                : %s: %s,

How can I …

command-line bash scripts awk

4
推荐指数
1
解决办法
5700
查看次数

sed 删除最后两个数字

我有以下内容。

oid=.1.3.6.1.4.1.795.2.5.0.xxx (these 0.xxx represent any random numeral)
Run Code Online (Sandbox Code Playgroud)

我想做以下事情

echo $oid | sed (some commands to remove 0.xxx)
Run Code Online (Sandbox Code Playgroud)

并存储结果字符串

.1.3.6.1.4.1.795.2.5
Run Code Online (Sandbox Code Playgroud)

在 oid。

我不介意用 Grep、awk 或 sed 来完成。
0.xxx 之前的一切都可以改变,只有静态的东西会是 0。
谢谢你的帮助!

bash scripts grep sed awk

3
推荐指数
1
解决办法
1538
查看次数

将特定字符串添加到数组 sed/awk/grep

我有这个

ciscoFlashCopyStatus 对象类型
        语法整数
                {  
                copyOperationPending(0),
                copyInProgress(1),
                复制操作成功 (2),
                copyInvalidOperation (3),
                copyInvalidProtocol (4),
                copyInvalidSourceName (5),
                copyInvalidDestName (6),
                copyInvalidServerAddress (7),
                copyDeviceBusy (8),
                copyDeviceOpenError (9),
                复制设备错误(10),
                copyDeviceNotProgrammable (11),
                copyDeviceFull (12),
                copyFileOpenError (13),
                copyFileTransferError(14),
                copyFileChecksumError(15),
                copyNoMemory (16),
                copyUnknownFailure(17),
                复制无效签名(18)
                }
        MAX-ACCESS 只读
        状态电流     

我想做的事

一些命令将每个名称复制VARIABLE到名为的数组中var

所以输出的例子

回声“${var[0]}
复制操作待处理

回声“${var[1]}
复制进度

回声“${var[2]}
复制操作成功

等等..

任何想法我怎么能做到这一点?

注意这是一个类似的问题,我之前问过一些事情发生了什么变化,我不能再使用旧问题中提供的相同解决方案。

command-line bash scripts text-processing

2
推荐指数
1
解决办法
1232
查看次数

=0 未找到 bash 命令

grep "::=BEGIN" -q < /home/erawson/bin/HP/adaptec.mib
CHK= echo $?
if ($CHK = "0") ; then
echo "failed"
else    
     exit
fi
Run Code Online (Sandbox Code Playgroud)

错误是:

/home/erawson/bin/try1: line 10: =: command not found
Run Code Online (Sandbox Code Playgroud)

command-line bash scripts

-1
推荐指数
1
解决办法
7215
查看次数

读取包含特定字符串的行数

我有这个文件

 Adaptec.mib,sCSISmart1,.1.3.6.1.4.1.795.2.5.0.101,CRITICAL,
 Adaptec.mib,sCSISmart2,.1.3.6.1.4.1.795.2.5.0.102,INFORMATIONAL,
 Adaptec.mib,sCSISmart3,.1.3.6.1.4.1.795.2.5.0.107,INFORMATIONAL,
 adaptec.mib,sCSISmart4,.1.3.6.1.4.1.795.2.5.0.108,INFORMATIONAL,
 Adaptec.mib,sCSISmart5,.1.3.6.1.4.1.795.2.5.0.109,INFORMATIONAL,
 adaptec.mib,sCSISmart6,.1.3.6.1.4.1.795.2.5.0.110,INFORMATIONAL,
 Adaptec.mib,sCSISmart7,.1.3.6.1.4.1.795.2.5.0.111,INFORMATIONAL,
 Adaptec.mib,sCSISmart8,.1.3.6.1.4.1.795.2.5.0.112,INFORMATIONAL,
 Adaptec.mib,sCSISmart9,.1.3.6.1.4.1.795.2.5.0.113,INFORMATIONAL,
 Adaptec.mib,sCSISmart10,.1.3.6.1.4.1.795.2.5.0.114,INFORMATIONAL,
 Adaptec.mib,sCSISmart11,.1.3.6.1.4.1.795.2.5.0.115,CRITICAL,
 Adaptec.mib,sCSISmart12,.1.3.6.1.4.1.795.2.5.0.116,INFORMATIONAL,
 Adaptec.mib,sCSISmart13,.1.3.6.1.4.1.795.2.5.0.117,INFORMATIONAL,
 Adaptec.mib,sCSISmart14,.1.3.6.1.4.1.795.2.5.0.118,INFORMATIONAL,
 Adaptec.mib,sCSISmart15,.1.3.6.1.4.1.795.2.5.0.119,CRITICAL,
 Adaptec.mib,sCSISmart16,.1.3.6.1.4.1.795.2.5.0.120,CRITICAL,
 Adaptec.mib,sCSISmart17,.1.3.6.1.4.1.795.2.5.0.121,INFORMATIONAL,
 Adaptec.mib,sCSISmart18,.1.3.6.1.4.1.795.2.5.0.122,INFORMATIONAL,
 Adaptec.mib,sCSISmart19,.1.3.6.1.4.1.795.2.5.0.123,CRITICAL,
 adaptec.mib,sCSISmart20,.1.3.6.1.4.1.795.2.5.0.124,INFORMATIONAL,
 Adaptec.mib,sCSISmart21,.1.3.6.1.4.1.795.2.5.0.125,INFORMATIONAL,
 ashcroft_hsv_340.mib,sCellEventTrap_02_00,.1.3.6.1.4.1.232.13600512,信息,
 ashcroft_hsv_340.mib,sCellEventTrap_03_21,.1.3.6.1.4.1.232.13600801,次要的,

我想存储包含adaptec.mib的行数,在本例中为21。

如何才能做到这一点?使用任何 sed/grep/awk。

command-line scripts

-2
推荐指数
1
解决办法
738
查看次数