Creio que o seu problema é pq vc está colocando um uniq para linhas diferentes. A única coisa igual seria o $arq. Desta forma, antes do uniq vc teria vc deveria cortar a saída do ps ou veja que o uniq tem 2 opções interessantes: o -s e o -f que comparam porções restritas de cadeias. Verifique qual se adequa mais ao seu caso.
Monte Alto é o distrito de Arraial do Cabo? Abraços, Julio :wq Em 17/05/07, Monte Alto Net <[EMAIL PROTECTED]> escreveu: > > Boa Tarde a todos > > Sou novo na lista e ja tenho dúvidas a qual gostaria de compartilhar > com o grupo. > Preciso desenvolver um script o qual faça a verificação de um arquivo > sendo tomada a seguinte decisão > > O arquivo será aberto pelo mesmo usuário e em caso de mais de um > acesso ao mesmo o usuario só poderá visualiza-lo e nao efetuar > alterações sendo o nome do arquivo passado como parametro no script. > > Ja montei um script mas estou tendo alguns problemas principalmente na > hora de verificar se o mesmo encontra-se na memória. > > Segue script > > #!/bin/bash > if test $# = 0 > then > mcedit > fi > arq=$1 > memoria=`ps a | grep -o $arq | uniq` <---onde ocorre a duvida, * > if test $memoria = $arq > then > mcedit -v $arq > else > mcedit $arq > fi > > * nao estou conseguindo atribuir o resultado na variavel memõria, > simplesmente o script atribui `` a variavel e não o resultado. > > Toda ajuda é bem vinda. > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas]
