Use tar para criar o tarball do diretório e executar a soma nele.
tar cf - <directory name> | sum -
Na minha máquina Solaris, às vezes, uso o comando sum
para verificar se um arquivo não foi alterado. Agora quero verificar se o conteúdo de um diretório foi alterado, mas sum
é executado apenas em arquivos.
Existe uma maneira de executar sum
ou um comando similar em um diretório inteiro?
Exemplo sum
em um arquivo:
$ sum file.xml
27247 11 file.xml
1) faça uma referência:
find . -type f -exec sum {} \; | sort -k3 > /my/reference.txt
2) faça um teste de tempo de execução
find . -type f -exec sum {} \; | sort -k3 | diff /my/reference.txt -
onde
sort -k3
faz uma classificação no nome do arquivo diff
parte mostrará o arquivo alterado, adicionado ou excluído. No Solaris tar
funciona de maneira diferente. Então, use gtar
do GNU ou use tar cf -
e, em seguida, a solução da Miline:
tar cf - folder | sum