Eu só posso supor que você estava combinando na capital A em abril e não funciona mais porque agora é em maio.
Talvez em vez de "A" você deva usar '^'.
Eu tenho um script simples que me dá alguns valores de um arquivo. Eu estou usando sed para obter esse vaules (sintaxe é dada abaixo). esses comandos estavam funcionando bem até ontem. mas agora não estou recebendo nenhum valor quando executo esses comandos. Eu não mudei nada, então estou surpreso que o que é razão. Alguém por favor pode me dizer como posso depurar o meu problema? abaixo está o texto do arquivo:
May 1 11:59:31 box2 kernel: usb 1-3: new high speed USB device using ehci_hcd and address 24
May 1 11:59:31 box2 kernel: usb 1-3: New USB device found, idVendor=0411, idProduct=0105
May 1 11:59:31 box2 kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=5
May 1 11:59:31 box2 kernel: usb 1-3: Product: USB-SATA Bridge
May 1 11:59:31 box2 kernel: usb 1-3: Manufacturer: BUFFALO
May 1 11:59:31 box2 kernel: usb 1-3: SerialNumber: 00001412AA38
May 1 11:59:31 box2 kernel: usb 1-3: configuration #1 chosen from 1 choice
May 1 11:59:31 box2 kernel: scsi27 : SCSI emulation for USB Mass Storage devices
May 1 11:59:38 box2 kernel: scsi 27:0:0:0: Direct-Access BUFFALO External HDD PQ: 0 ANSI: 2 CCS
May 1 11:59:38 box2 kernel: sd 27:0:0:0: Attached scsi generic sg6 type 0
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] 976773168 512-byte logical blocks: (500 GB/465 GiB)
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] Write Protect is off
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] Assuming drive cache: write through
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] Assuming drive cache: write through
May 1 11:59:38 box2 kernel: sdf: sdf1
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] Assuming drive cache: write through
May 1 11:59:38 box2 kernel: sd 27:0:0:0: [sdf] Attached SCSI disk
O script é:
SERIAL=$(sed -n '5s/A.*: //p' filename)
SIZE=$(sed -n '10s/A.*: //p' filename)
MOUNT=$(sed -n '14s/A.*: //p' filename)
Assim como o @wfaulk diz, se o texto fornecido for o que você usa, os números devem ser 6,11,15.
SERIAL=$(sed -n 's/.*SerialNumber: \(.*\)//p' filename)
SIZE=$(sed -n 's/.*logical blocks: \(.*\)//p' filename)
pode ser mais confiável. Eu não posso ver uma maneira melhor de obter o ponto de montagem com os dados fornecidos.
Dos comentários
MOUNT=$(sed -n 's/.* sd[a-z]: \(.*\)//p' filenaem)
As coisas nos arquivos de log podem desaparecer devido à rotação de log. A última vez que tive que fazer isso, achei o utilitário lshw muito útil. Por exemplo, lshw -class disk -quiet
atenderá às suas necessidades. O lshw está disponível por padrão no Ubuntu e também está disponível para centos / redhat ( link ).
Eu sei que isso é fora do tópico, mas espero que seja útil para o OP.