shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Variaveis em Bash


From: Hugo Cisneiros
Subject: Re: [shell-script] Re: Variaveis em Bash
Date: Tue, 13 Jun 2000 10:41:21 -0300

On Tue, 13 Jun 2000, you wrote:
> Eu gostaria de pegar apenas o tamanho do arquivo e o nome do mesmo, e fazer o
> append *em uma unica linha*, com esse resultado:
> 
> 99148 lfs_ptbr.txt
> 
> Mas o cut só me permite manipular uma listagem por vez... vejam:
> 
> [thiago@zuleica thiago]$ ls -lu lfs_ptbr.txt | cut -d ' ' -f 10-14 -c 19-
> cut: only one type of list may be specified  
> 
> É possivel manipular duas listas com a mesma output?

Hmmm...

----------
#!/bin/bash
for x in *
do
  CAMPO1=`ls -lu $x | tr '_' -d [:blank:] -s | cut -d ' ' -f 5`
  CAMPO2=`ls -lu $x | tr '_' -d [:blank:] -s | cut -d ' ' -f 9`
  echo "$CAMPO1 $CAMPO2" >> resultados
done
-----------

Veja se funciona, nao esqueca de remover certos aliases que deixam os nomes dos
arquivos com caracteres especiais para indicar o tipo (como / para diretorio, *
para executavel, etc).

O que fiz aqui foi remover aquele monte de espacos em branco que deixa o ls -l
'bonitinho', fiz isso com o comando tr. Sem isso cada arquivo teria um espaco
diferente, e os campos separados pelo espaco (cut -d ' ') nao ficariam iguais,
entao o delimitador ficou igual para todos, nao importando o tamanho das
strings impressas pelo ls -l.

> -- 
> See ya,
> Thiago Pimentel               | Stampede Linux Foundation

[]'s
Hugo


reply via email to

[Prev in Thread] Current Thread [Next in Thread]