Solaris
未找到 stat 命令
我想在我的 unix shell /usr/bin/ksh 中執行 stat 命令:
輸入:
/bin/date +%Y%m%d%H%M%S -d "$(/usr/bin/stat -c %x find.txt)"
和輸出:
/usr/bin/ksh: stat: not found
我的系統: SunOS 5.10 Generic_150400-23 sun4v sparc sun4v
該
stat
命令不是標準的。在 Linux 上有一個,在嵌入式 Linux 上有一個更受限制的,在 FreeBSD 和 OSX 上有一個完全不同的選項,而在大多數其他 Unix 變體(如 Solaris、AIX 和 HP-UX)上都沒有。您的語法看起來像是用於 Linux 的stat
.您顯然正在執行一個沒有
stat
. 那時你可能都沒有date -d
。列出文件訪問時間的唯一可移植方法是使用
ls
.ls -log -u find.txt
這以繁瑣的格式提供了您需要的不太精確的輸出。
如果您可以安裝GNU coreutils,請安裝並使用它的
stat
和date
命令。許多現代 Unix 變體都有安裝 GNU 實用程序的簡單方法。或者,使用 Perl,它經常安裝在 Unix 系統上。呼叫
stat
以讀取文件的時間戳並將localtime
時間戳分成日期和時間部分。perl -e '@stat = stat($ARGV[0]); @time = localtime($stat[9]); printf "%04d%02d%02d%02d%02d%02d\n", $time[5]+1900, @time[4,3,2,1,0]'