Perl/サンプル/パーミッションを変更する・chmod
の編集
Top
/
Perl
/
サンプル
/
パーミッションを変更する・chmod
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * Perlでパーミッションを変更する・chmod [#v8562c65] Perlのmkdirでパーミッションを指定してもumaskが有効になるためmkdirに指定したパーミッション値になりません。~ (umaskが0であれば意図したパーミッションになりますが…) 以下にディレクトリおよびファイルのパーミッションを変更するchmodについてサンプルコードを記します。 #contents #htmlinsertpcsp(ll-top.html,ll-sp.html) * 関連記事 [#b7d6b325] -[[ファイルから1行ずつ読み込む方法>Perl/サンプル/ファイルから1行ずつ読み込む方法]] -[[Perlでファイル・ディレクトリの有無を確認する>Perl/サンプル/ファイル・ディレクトリの有無を確認する]] -[[Perlでディレクトリを作成する・mkdir・mkpath>Perl/サンプル/ディレクトリを作成する・mkdir・mkpath]] -[[Perlでパーミッションを変更する・chmod>Perl/サンプル/パーミッションを変更する・chmod]] * 動作確認環境 [#r2c8ac86] -Perl $ perl -v This is perl 5, version 14, subversion 2 (v5.14.2) built for i686-linux-gnu-thread-multi-64int (with 57 registered patches, see perl -V for more detail) <snip> -OS $ lsb_release -d Description: Ubuntu 12.04.4 LTS * chmodのサンプルコード [#jc7a0671] 本サンプルコードを実行する前に、端末から以下のコマンドでファイルおよびディレクトリを作成しました。 $ touch foo.txt $ mkdir bar パーミッションは以下の通りです。 $ ls -ld foo.txt bar/ drwxrwxr-x 2 sakura sakura 4096 3月 6 11:21 bar/ -rw-rw-r-- 1 sakura sakura 0 3月 6 11:21 foo.txt umask値は以下の通りです。 $ umask 0002 -サンプルコード1 use strict; use warnings; chmod 0777, 'foo.txt'; chmod 0777, 'bar'; 上記のサンプルコードを実行すると以下のようにパーミッションが変更されたのが確認できます。 $ ls -ld foo.txt bar/ drwxrwxrwx 2 sakura sakura 4096 3月 6 11:21 bar/ -rwxrwxrwx 1 sakura sakura 0 3月 6 11:21 foo.txt 上記のサンプルコードを以下のように書くこともできます。~ 上記と同様の動作になります。 use strict; use warnings; my @t = ('foo.txt', 'bar'); chmod 0777, @t; 以上、Perlでパーミッションを変更するときのサンプルコードでした。 #htmlinsertpcsp(ll-btm.html,ll-sp.html)
タイムスタンプを変更しない
#navi(../) * Perlでパーミッションを変更する・chmod [#v8562c65] Perlのmkdirでパーミッションを指定してもumaskが有効になるためmkdirに指定したパーミッション値になりません。~ (umaskが0であれば意図したパーミッションになりますが…) 以下にディレクトリおよびファイルのパーミッションを変更するchmodについてサンプルコードを記します。 #contents #htmlinsertpcsp(ll-top.html,ll-sp.html) * 関連記事 [#b7d6b325] -[[ファイルから1行ずつ読み込む方法>Perl/サンプル/ファイルから1行ずつ読み込む方法]] -[[Perlでファイル・ディレクトリの有無を確認する>Perl/サンプル/ファイル・ディレクトリの有無を確認する]] -[[Perlでディレクトリを作成する・mkdir・mkpath>Perl/サンプル/ディレクトリを作成する・mkdir・mkpath]] -[[Perlでパーミッションを変更する・chmod>Perl/サンプル/パーミッションを変更する・chmod]] * 動作確認環境 [#r2c8ac86] -Perl $ perl -v This is perl 5, version 14, subversion 2 (v5.14.2) built for i686-linux-gnu-thread-multi-64int (with 57 registered patches, see perl -V for more detail) <snip> -OS $ lsb_release -d Description: Ubuntu 12.04.4 LTS * chmodのサンプルコード [#jc7a0671] 本サンプルコードを実行する前に、端末から以下のコマンドでファイルおよびディレクトリを作成しました。 $ touch foo.txt $ mkdir bar パーミッションは以下の通りです。 $ ls -ld foo.txt bar/ drwxrwxr-x 2 sakura sakura 4096 3月 6 11:21 bar/ -rw-rw-r-- 1 sakura sakura 0 3月 6 11:21 foo.txt umask値は以下の通りです。 $ umask 0002 -サンプルコード1 use strict; use warnings; chmod 0777, 'foo.txt'; chmod 0777, 'bar'; 上記のサンプルコードを実行すると以下のようにパーミッションが変更されたのが確認できます。 $ ls -ld foo.txt bar/ drwxrwxrwx 2 sakura sakura 4096 3月 6 11:21 bar/ -rwxrwxrwx 1 sakura sakura 0 3月 6 11:21 foo.txt 上記のサンプルコードを以下のように書くこともできます。~ 上記と同様の動作になります。 use strict; use warnings; my @t = ('foo.txt', 'bar'); chmod 0777, @t; 以上、Perlでパーミッションを変更するときのサンプルコードでした。 #htmlinsertpcsp(ll-btm.html,ll-sp.html)
テキスト整形のルールを表示する