python:os

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
python:os [2017/02/17 09:54] – [ファイルの存在] mumeiyamibitopython:os [2019/04/25 11:06] (現在) – [更新日時] mumeiyamibito
行 41: 行 41:
 </code> </code>
  
-==== パーミッションの取り扱い ====+==== パーミッション ====
   * パーミッションを取得 (Linux のマスク形式で取得)\\ <code python>   * パーミッションを取得 (Linux のマスク形式で取得)\\ <code python>
-oct(os.stat("hoge.txt")[ST_MODE][-4:]+oct(os.stat("hoge.txt").st_mode)[-4:]
 </code> </code>
     * 通常の 3 桁の前に ''0'' が付いた形式で返される (例: 0755, 0600, ...)     * 通常の 3 桁の前に ''0'' が付いた形式で返される (例: 0755, 0600, ...)
行 56: 行 56:
       * 参考サイト: [[http://stackoverflow.com/questions/1837874/invalid-token-when-using-octal-numbers | python - Invalid Token when using Octal numbers - Stack Overflow]]       * 参考サイト: [[http://stackoverflow.com/questions/1837874/invalid-token-when-using-octal-numbers | python - Invalid Token when using Octal numbers - Stack Overflow]]
  
 +==== 更新日時 ====
 +  * ''os.stat'' で ''os.stat_result'' オブジェクトを取得し整形する。\\ <code python>
 +os.stat(FILE).st_atime
 +os.stat(FILE).st_mtime
 +os.stat(FILE).st_ctime
 +</code>
 +    * ''FILE'': 更新日時を取得するファイル
 +    * ''.st_atime'': 最終アクセス日時
 +    * ''.st_mtime'': 最終内容更新日時
 +    * ''.st_ctime'': メタデータ最終更新日時
 +    * 得られる日時は UNIX 時間 (1970 年 1 月 1 日 0 時 0 分 0 秒からの時間) なので、datetime モジュールを用いて変換する。\\ <code python>
 +from datetime import datetime
 +datetime.fromtimestamp(os.stat(FILE).st_atime).strftime("%Y/%m/%d %H:%M:%S")
 +datetime.fromtimestamp(os.stat(FILE).st_mtime).strftime("%Y/%m/%d %H:%M:%S")
 +datetime.fromtimestamp(os.stat(FILE).st_ctime).strftime("%Y/%m/%d %H:%M:%S")</code>
 +  * 参考サイト: [[https://note.nkmk.me/python-os-stat-file-timestamp/ | Pythonでファイルのタイムスタンプ(作成日時や更新日時)を取得 | note.nkmk.me]]
 +
 +
 +==== 環境変数取得 ====
 +  * シェル内部での環境変数を取得する方法\\ <code python>VARIABLE = os.environ[ENV_VAR]</code>
 +    * ''VARIABLE'': シェル変数を受け取るための変数
 +    * ''ENV_VAR'': 環境変数名 (文字列)
 +    * 例: \\ <code python>hoge = os.environ["PATH"]</code>
 +    * nautilus-scripts や nemo-scripts の変数も環境変数であるので、この方法で取得する
 +  * 参考サイト: [[http://palepoli.skr.jp/tips/nautilus/script.php | Nautilus をスクリプトで拡張 - L'Isola di Niente]]
 +
 +==== リンク先を取得 ====
 +  * [[https://siguniang.wordpress.com/2009/11/25/%E3%82%B7%E3%83%B3%E3%83%9C%E3%83%AA%E3%83%83%E3%82%AF%E3%83%AA%E3%83%B3%E3%82%AF%E5%85%88%E3%81%AE%E3%83%91%E3%82%B9%E3%82%92%E5%8F%96%E5%BE%97/ | シンボリックリンク先のパスを取得 | Siguniang's Blog]]
  
 {{tag>プログラミング}} {{tag>プログラミング}}
  
  • python/os.1487292843.txt.gz
  • 最終更新: 2017/02/17 09:54
  • by mumeiyamibito