68user's page 掲示板

Prev< No. 4885〜4893> Next  [最新発言に戻る] [過去ログ一覧]
No. 4885 # maya 2008/03/04 (火) 16:06:17
初歩的なことなんですが教えてください。
tar.gz な書庫にファイルを追加したい場合、
いちいちgunzipしないといけないんでしょうか?

なにかスマートな方法はあるんでしょうか?

No. 4886 # つのりん [E-mail] 2008/03/23 (日) 20:10:01
はじめまして、つのりん と呼んでください。

早速ですがx68k専用マウスが故障しました。

症状はとしては、カーソルは全く異常なく動作しますが、クリックが左右ともできなくなりました。原因はボタン下のマイクロスイッチの故障ではないかと思われます。

なにか対策法はありませんか?

よろしくお願いします。

No. 4887 # mm 2008/03/24 (月) 06:42:58
はじめまして。
http://x68000.q-e-d.net/~68user/unix/pickup?find
findの説明のところで、
-atime 4 4日前にアクセスされたファイル
-ctime 4 ちょうど4日前にファイルステータスが変更されたファイル
-mtime 4 ちょうど3日前に修正されたファイル
と、mtimeだけ3日前となっていますが、これは間違いでしょうか?

No. 4888 # べた 2008/03/25 (火) 12:40:27
findで、検索する文字が複数出てくる場合の
記述について教えてください。

あるディレクトリに、以下の様な「YYYYmmdd」形式の
ディレクトリが存在した場合ですが、名前がすべて、
「0〜9」の数字であるディレクトリのみを表示したい
のですが、どのように書けばよいのでしょうか。

find . -name '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' -type d
で表示されるのですが、
[0-9]を8回書く以外に、違った書き方はないでしょうか。

find . -name '[0-9]*[0-9]' -type d
find . -name '[0-9]......[0-9]' -type d
find . -name '[0-9]*......[0-9]' -type d
find . -name '[0-9]......*[0-9]' -type d
とかしてみたのですが。



/tmp配下に、
20080301
20080302
20080303
20080303.bk
a0080304
2008030a
200a0306
200080307

No. 4889 # 68user 2008/03/25 (火) 17:25:53
>>4885 maya
> tar.gz な書庫にファイルを追加したい場合、いちいちgunzipしないといけないんでしょうか?
r で追加できますが、gzip してある場合はできないようですので、gunzip が必要と
思われます (BSD tar と GNU tar で確認)。

>>4886 つのりん
ヤフオクによく出品されているように見えますので、チェックしてみてはどうでしょうか
今は「キーボード & マウス [未使用]」が出てますね。

>>4887 mm
> と、mtimeだけ3日前となっていますが、これは間違いでしょうか?
ありがとうございます。誤りでしたので修正いたしました。

>>4888 べた
Perl の正規表現 (PCRE) であれば [0-9]{8} もしくは \d{8} ですが、POSIX における
基本正規表現や拡張正規表現では上記のような表現はできませんので、find にこだわる
のであれば 8回書くしかないです。

あるいは、
    ・File::Find を使った perl のワンライナーでがんばる
    ・シェル変数を使う
            csh・tcsh の場合:
                % set x='[0-9]'
                % find . -name "$x$x$x$x$x$x$x$x"
            sh・bash の場合:
                % x='[0-9]'
                % find . -name "$x$x$x$x$x$x$x$x"
など。

No. 4890 # べた 2008/03/25 (火) 18:30:49
>>4889 68user

ありがとうございます。

No. 4891 # べた 2008/03/26 (水) 15:09:22
perlの使い方なのですが、

日付と時間を表示する簡単なものを作りました。
実行したら動いたのですが、ところが、下記のような
メッセージが出ました。

------------------------------------------------------------
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
                LC_ALL = (unset),
                LANG = "ja_JP.PCK"
        are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
------------------------------------------------------------

このメッセージを表示させないようにするには、どうしたらよいか
教えてください。

環境は、Solari8

以下、perlのシェルスクリプト
------------------------------------------------------------
#!/usr/local/bin/perl
#

($day, $mon, $year) = (localtime(time))[3..5];
printf("Today : %04d/%02d/%02d\n",$year+1900,$mon +1,$day);

($sec, $min, $hour) = (localtime(time))[0..2];
printf("Time : %02d:%02d:%02d\n",$hour,$min,$sec);
------------------------------------------------------------

No. 4892 # maya 2008/03/26 (水) 18:52:55
>>4889 68user

なるほど。ここらへんはzipやrarなどと比べると不便ですね。
ありがとうございました。

No. 4893 # 68user 2008/03/26 (水) 18:54:47
>>4891 べた
「perl: warning: Setting locale failed」で検索すれば出てきますが、
環境変数 PERL_BADLANG を設定することで回避可能です。詳細は検索願います。

Prev< No. 4885〜4893> Next  [最新発言に戻る] [過去ログ一覧]