1. はじめに Linux でファイルの作成時刻が見つかるかどうかは、ファイル システムの種類によって異なります。ext4 より前の初期のファイル システム (ext、ext2、ext3) では、ファイルのメタデータにはファイルの作成時刻は記録されず、アクセス時刻、変更時刻、変更時刻 (ステータス変更時刻) のみが記録されます。一般的なファイルの基本情報は次のとおりです。 [root@bugwz ~]# stat テスト.file ファイル: 'test.file' サイズ: 2 ブロック: 8 IO ブロック: 4096 通常ファイル デバイス: 807h/2055d Inode: 5255117 リンク: 1 アクセス: (0755/-rwxr-xr-x) Uid: (0/root) Gid: (0/root) アクセス: 2019-12-12 19:11:33.175841399 +0800 修正: 2019-12-12 19:11:37.564970487 +0800 変更: 2019-12-12 19:11:43.079132663 +0800 生年月日: -
2. 練習 2.1. ファイルの作成時刻を取得する ファイルの inode 番号を取得します。以下に示すように、inode 番号は 5255117 です。 [root@bugwz data]# stat /data/test.file ファイル: '/data/test.file' サイズ: 2 ブロック: 8 IO ブロック: 4096 通常ファイル デバイス: 807h/2055d Inode: 5255117 リンク: 1 アクセス: (0755/-rwxr-xr-x) Uid: (0/root) Gid: (0/root) アクセス: 2019-12-12 19:11:33.175841399 +0800 修正: 2019-12-12 19:11:37.564970487 +0800 変更: 2019-12-12 19:11:43.079132663 +0800 生年月日: - ファイルが配置されているディスク パスを見つけます。以下に示すように、ディスク パスは /dev/sda7 です。 [root@bugwz データ]# df -h ファイルシステムサイズ 使用済み 使用可能使用率 マウント先 /dev/sda3 3.9G 2.5G 1.2G 70% / devtmpfs 16G 0 16G 0% /dev tmpfs 16G 0 16G 0% /dev/shm tmpfs 16G 1.7G 14G 11% /実行 tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sda1 12G 11G 787M 94% /usr /dev/sda5 7.8G 4.2G 3.2G 57% /tmp /dev/sda7 235G 180G 44G 81% /データ /dev/sda6 7.8G 2.1G 5.3G 29% /var debugfs を使用してファイルの作成時刻を表示し、作成時刻 crtime が Thu Dec 12 19:05:23 2019 であることを確認します。 [root@bugwz data1]# debugfs -R 'stat <5255117>' /dev/sda7 debugfs 1.42.9 (2013 年 12 月 28 日) Inode: 5255117 タイプ: 通常 モード: 0755 フラグ: 0x80000 世代: 758605841 バージョン: 0x00000000:00000001 ユーザー: 0 グループ: 0 サイズ: 2 ファイル ACL: 0 ディレクトリ ACL: 0 リンク: 1 ブロック数: 8 フラグメント: アドレス: 0 番号: 0 サイズ: 0 ctime: 0x5df2206f:12dddfdc -- 2019 年 12 月 12 日木曜日 19:11:43 atime: 0x5df22065:29ec81dc -- 2019 年 12 月 12 日木曜日 19:11:33 mtime: 0x5df22069:86b30fdc -- 2019 年 12 月 12 日木曜日 19:11:37 crtime: 0x5df21ef3:d586ca44 -- 2019 年 12 月 12 日木曜日 19:05:23 追加の inode フィールドのサイズ: 28 範囲: (0):16949121 2.2. 統合スクリプト: #!/bin/sh [ $# -ne 1 ] && echo "使用法: $0 {FILENAME}" && exit 1 INODE=`ls -i $1 |awk '{print $1}'` ファイル名=$1 # パラメータに / が含まれている場合は、パラメータのディレクトリ パスを取得し、ディレクトリを入力します `echo $FILENAME | grep / 1> /dev/null` && { FPWD=${FILENAME%/*};FPWD=${FPWD:=//;cd ${FPWD};FPWD=`pwd`; } || FPWD=`pwd` 配列=(`echo ${FPWD} | sed 's@/@ @g'`) 配列の長さ=${#配列[@]} ((i=${array_length};i>=0;i--)); を実行する 配列[$i]の設定を解除 SUBPWD=`echo " "${array[@]} | sed 's@ @/@g'` DISK=`df -h |grep ${SUBPWD}$ |awk '{print $1}'` [[ -n $DISK ]] && ブレーク 終わり # ファイルシステムが ext4 でない場合は終了します [[ "`df -T | grep ${DISK} |awk '{print $2}'`" != "ext4" ]] && { echo ${DISK} はタイプ ext4 にマウントされていません。ext4 ファイルシステムのみがサポートされています。;exit 2; } debugfs -R "stat <${INODE}>" ${DISK} 参考アドレス: https://www.jb51.net/article/176316.htm 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: イベントバブリング、イベントキャプチャ、イベント委任に基づく詳細な説明
>>: MySql インポート CSV ファイルまたはタブ区切りファイル
1. MySQLをダウンロードするMySQL 公式 Web サイトにログインし、MSI インストー...
最近、空港や駅でフライト情報を表示するものと似た大型スクリーンディスプレイのプロジェクトに取り組んで...
JavaScript では、警告ボックス、確認ボックス、プロンプト ボックスの 3 種類のメッセージ...
MySQL では、IF()、IFNULL()、NULLIF()、および ISNULL() 関数を使用...
この記事では、Docker で新しいイメージを手動で構築する方法を紹介し、皆さんと共有します。詳細は...
目次効果テキストの作成を開始するまずフォントローダーを作成するフォントライブラリを読み込むテキストジ...
MySQL Community Server 5.7.18 の配布パッケージには .ini ファイル...
目次refとは何かrefの使い方DOM要素に配置するクラスコンポーネントに配置する関数コンポーネント...
データベース操作を学び始めたばかりです。今日、データを保存していたところ、エラーが発生していることに...
この記事では、Docker+Jenkins の自動ビルドデプロイメントを紹介し、皆さんと共有します。...
NFS とは何ですか?ネットワークファイルシステムネットワーク上でファイルを保存および整理するための...
MySQL には以前、クエリ キャッシュ (Query Cache) がありました。8.0 以降では...
この記事では、次のように、誰にでも共有できる左右幅固定のミドルアダプティブ HTML レイアウトソリ...
デフォルトの Linux カーネル パラメータは最も一般的なシナリオに基づいており、高い同時アクセス...
目次1. 配列の平坦化の概念2. 実装1. 減らす2. toString と split 3. 結合...