Использование статистики в команде связки?

Преобразование решения @Birei на «Дополнительные проблемы» обновления:

perl -pe 's{^// {10}}{sprintf("// Text %-3d ",++$i)}e  or
          s{^//     }{sprintf("// Text %d",   ++$i)}ex '          infile
0
05.09.2014, 00:53
3 ответа

Команда stat не определена в POSIX и недоступна в некоторых системах * nix. На самом деле не существует определенных в POSIX утилит CLI, которые возвращали бы время. Использование perl - это один из методов, который будет работать на большинстве машин * nix. Вот однострочный текст, который можно использовать в сценарии оболочки:

perl -sle '@s = stat($filename); print "atime: $s[8]\nmtime:$s[9]"' -- -filename=foo
0
28.01.2020, 02:52

/ usr / bin / stat находится в моей системе Solaris 11. Он устанавливается как часть пакета gnu-coreutils .

Кроме того, truss не является подкомандой sftp . Для запуска truss лучше запустить сеанс ssh , а не sftp .

0
28.01.2020, 02:52

truss , скорее всего, установлен на вашем компьютере, проблема в том, что вы вызываете его из sftp , а не из приглашения оболочки.

Из последнего способа получить доступ и время модификации с помощью стандартных команд Solaris будет:

$ 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 ]
1
28.01.2020, 02:52

Теги

Похожие вопросы