Uso estatico no comando truss?

0

Eu quero obter o tempo de acesso e hora de modificação do arquivo na máquina unix solaris. O comando stats não foi encontrado naquela máquina solaris. Você poderia sugerir qual é o comando alternativo para encontrar o horário de acesso e a hora de modificação do arquivo? Eu usei o seguinte (que claramente não funcionou):

sftp> truss -f -v 'lstat,lstat64' ls -d 140901.log
Invalid command.

Você poderia sugerir o comando?

    
por user3777702 04.09.2014 / 07:36

3 respostas

1

truss é provavelmente instalado em sua máquina, o problema é que você está chamando de sftp , não do prompt do shell.

Do último, uma maneira de obter o tempo de acesso e modificação usando os comandos padrão do Solaris seria:

$ truss -f -v 'lstat,lstat64' ls -d . 2>&1 | grep '[am]t ='
29879:          at = Jul 16 17:20:56 CEST 2014  [ 1405524056.485059303 ]
29879:          mt = Aug 18 23:34:35 CEST 2014  [ 1408397675.814979313 ]
    
por 04.09.2014 / 08:32
0

O comando stat não é definido pelo POSIX e não está disponível em alguns sistemas * nix. Na verdade, não há utilitários CLI definidos pelo POSIX que retornem o atime. Usar perl é um método que funcionará na maioria das máquinas * nix. Aqui está um one-liner que você pode usar em um shell script:

perl -sle '@s = stat($filename); print "atime: $s[8]\nmtime:$s[9]"' -- -filename=foo
    
por 04.09.2014 / 07:59
0

/usr/bin/stat está no meu sistema Solaris 11. Ele é instalado como parte do pacote gnu-coreutils .

Além disso, truss não é um subcomando sftp . Você deseja executar uma sessão ssh em vez de sftp para executar truss .

    
por 04.09.2014 / 07:56