ベストアンサー 今年の経過日数 linixコマンドと find 2008/06/05 23:49 linuxコマンドで、今年からの経過日数を知る方法はありますか? できればfindと絡めたいです。 find -ctime +[経過日数をここで生成したい] みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー astronaut ベストアンサー率58% (303/516) 2008/06/06 00:04 回答No.1 素直に date コマンドでオッケーです。 # date +%j 他にも多くの表示オプションがあるので、man date して楽しんで下さい。 質問者 お礼 2008/06/06 00:21 ありがとうございます。 find / -ctime +`date +%j` でOKでしょうか? 質問者 補足 2008/06/06 00:21 +%jと前に+をつける理由は何かあるのですか? 通報する ありがとう 0 広告を見て他の回答を表示する(1) その他の回答 (1) astronaut ベストアンサー率58% (303/516) 2008/06/06 01:12 回答No.2 > find / -ctime +`date +%j` > でOKでしょうか? あなたが何を検索したいかによりますが・・・ ステータスが最後に変更されたのが去年の12月31日以前のファイルを探したいのなら、それでOKです。 通報する ありがとう 0 カテゴリ [技術者向] コンピューターOS(技術者向け)Linux系OS 関連するQ&A findコマンド findコマンドを用いて”昨日以降に変更・更新のあったファイル”を検索するにはどうしたらよいでしょうか? ご教授ねがいます。 また、-ctime、-atimeを用いたときの日付の±はどういう意味になるのでしょうか? 上記質問とあわせて教えていただければ幸いです。 findコマンドのオプションについて UNIXやLinuxの find コマンドの -noleaf オプションの意味を教えてください。 「manを見ただけではよく理解できませんでした・・・」 すみませんが、よろしくお願い致します。 findコマンドについて findコマンドをコマンドプロンプトより下記のとおり実行しました。 find "保留中" D:\find.txt 想定された結果を得る事ができました。 しかし、同じコマンドをバッチファイル(find.bat)として実行すると、コマンドを 繰り返し実行し続けていて終了せずに、結果を表示する事ができません。 何がいけないのでしょうか? findコマンドの-nameについて 独習Linux第2版で勉強しています。 findコマンドのnameオプションについて質問があります。 テキストでは下記のようなコマンド例が載っています。 find Reports/ -type f -name '*\.bak' -exec rm {} \; nameオプションでワイルドカードを使いたいので パターン部分をシングルクォートで囲っていることは理解できるのですが 「.bak」のドット前にバックスラッシュがついている意味がわかりません。 ネットでfindコマンド例を探してみると、 find Reports/ -type f -name '*.bak' -exec rm {} \; という感じでバックスラッシュなしで説明されています。 実行結果に変わりはないようですが、意味が理解できず困っています。 教えてください。 findについて findの検索条件で -ctime -mtime の違いが分かりません。 参考書を見ると ステータスが変更されたファイル:-ctime 変更されたファイル:-mtime と書いてありました。 参考となるサイト及び 知っていることがありましたら返答をお願い致します。 findコマンドで複数条件を設定する方法 findコマンドを使用して、最終更新日から10日以上経過しているかつ、拡張子が.gz 以外のファイルを圧縮する方法を教えていただきたいです。 それぞれ1つの条件を満たすコマンドはわかるのですが、2つの条件を満たすコマンドをどの様に作成すればよいかわかりません。 最終更新日から10日以上経過したファイルを圧縮 find . -mtime +10 -exec gzip {} ¥; 拡張子が.gz意外のファイルを圧縮 find . -name "*.gz" -prune -o -type f -print -exec gzip {} ¥; よろしくお願いします。 AIX findコマンド AIXのfindコマンドで指定フォルダ直下のファイルパスだけ出力する方法がありましたら教えて下さい。 よろしくお願いします。 FINDコマンドについて あるディレクトリでファイルの中に『abcde』という文字を含むファイルをさがしたいのですが、 FINDコマンドはどのように指定すればよいでしょうか? findコマンドについて unix コマンドについて質問です。 ファイル1の中に"A=1" ," B=2", "C=3"という文字列が入っているとします。 ファイル2の中に"D=1" , "E=2", "F=3"という文字列が入っているとします。 そのことを自分は知りません。 Aという文字が入っているファイルを探す為、 以下のfindコマンドを打ち、ファイル1のlsの結果が表示されました。 find ./ -type f -exec grep 'A' {} \; -ls その後、出力されたファイル1の中からBとCでgrepしてB=2", "C=3"を表示したいと思います。 上のコマンドと併せて一度でできるコマンドを教えていただけないでしょうか? 宜しくお願いします。 Cygwinのfind cygwinであるディレクトリ以下のパーミッションを全て777にしたいのですが、昔 findを使った覚えがあるのですが失念しました。 どのようにしたらよいのでしょうか? それからfind / -name [キーワード]でlinux?で検索できていた?のですが、cygwin上で同じことをするとエラーになります。 linuxとCygwinはコマンドが違うのでしょうか? Cygwinの良書もご存知の方、教えてください。 unixのfindコマンドについて。 unix(AIX)のfindコマンドで「find ./ -type f」というコマンドで一覧を取得しています。 「./」の中に「hogehoge -> /tmp/test」というような シンボリックリンクを使用しているディレクトリがある場合も、 「./hogehoge/hoge.log」 というように表示させるにはどうすれば良いでしょうか。 ご回答の程、宜しくお願い致します。 営業日のみの経過日数の求め方 営業日のみの経過日数の求め方 エクセルで土日祝日を除いて、今までの経過日数を出すにはどうしたら良いでしょうか? (1)予備のセルに「TODAY」 セル A1 (2)発生した日に日付 セル B2 (3)経過日数 セル C3 (1)ー(2)=(3)経過日数 という風にしたのですが、それだと営業日以外の土日祝日が入ってしまいます。 どのようにすればいいのでしょうか? よろしくお願いします。 unixのfindコマンドについて findコマンドでファイルを日付検索をする場合、一日前と検索してもタイムスタンプから24時間単位になってしまいます。単純に日にちが違うだけで検索するにはどうしたらいいでしょうか? 例ファイルpm11:00 を翌日am2:00にfindコマンドで検索したとき3時間しかたってなくても1日前の条件で検索できるでしょうか? 経過日数を調べたい 自分の誕生日から現在までの経過日数を算出するには、どういう関数を使ったらよいのでしょうか。 閏年の計算とかもあって、結構難しいプログラムですか? 経過日数を求める式が知りたいです 経過日数を求める式が知りたいです。 例えば、2013年9月12日から今日まで経過日数とかです。 うるう年計算もあることが前提です。 グレゴリオ暦などでもいいので、経過日数がわかればいいのです。 ですので、うるう年計算された、指定日(YYYY/MM/DD)までの日数がわかれ 問題なしです。(経過日は上記の今日-指定日とすればいいので) 但し、EXCELや%などは使わずにです。シフト演算もなしです(>>や<<です)。 これが結構難しいので、今はお手上げ状態です。 よろしくお願いいたします。 find コマンド(Unix) find コマンドで検索条件をANDで結んだりしたいのですが、うまくいきません。 あるサイトをまねて、find . -name abc -and -type d とやったのですが、-andでエラーメッセージが出てしまいます。(エラーメッセージはfind: bad option -andとfind:path-list predicate-list)-orの場合でも同じです。kshを使ってます。-and を使わないでfind . -name abcの時はきちんと検索できます。どなたか分かる方回答お願いします。 AIXのfindコマンドで引数オーバー AIXで、findコマンドを使った際に"パラメータリストが長すぎます"と言うエラーが出ます。解決方法を教えてください。 find ./* -ntime +2 -type f 因みに、対象のディレクトリには3000ファイ find コマンドの成否 OS は Debian 7.6 ですが、 ~/Desktop の直下に 001.txt を配置しているのですが、 $ cd ~/Desktop の後に次のコマンドを打つと $ find . -maxdepth 10 -name *001* ./001.txt と、ちゃんと見つかってくれます。 ちなみに -maxdepth 10 は念のためにつけておいたものです。 /media/8G でマウントされているUSBメモリの直下に 001.txt を配置していても $ cd /media/8G の後に $ find /media/8G -maxdepth 10 -name *001* $ find . -maxdepth 10 -name * | grep 001 $ find . -maxdepth 10 -name "*" | grep 001 のいずれを試しても、001.txt を見つけてくれません。 なぜこうなるのかサッパリわかりません。 どうしたらいいかお教え下さい。 よろしくお願いします。 findコマンドの場合だけなぜ末尾に{}や\;が必要なのか? なぜ findのexecの場合だけファイル名を表す{}や、コマンドの終了を表す\;が必要になるのでしょうか? 他のコマンドはわざわざ終了を明示的に示していないのにfindだけこのような記述をするのが不思議です。 Accessで経過日数を求める関数を教えていただけないでしょうか。 アクセスで経過日数を求めたいのですが、次のような場合はどのような式を組めばよいのでしょうか? フィールド: 請求日 支払日 支払確認日 新たに設ける関数式フィールド:経過日数 請求日から20日過ぎて、なおかつ支払確定日が空白のレコードを「経過日数」フィールドに経過日数の数値で返したい。 どなたかおわかりになる方がいらっしゃいましたら、教えていただけないでしょうか。 よろしくお願いいたします。 注目のQ&A 「前置詞」が入った曲といえば? 新幹線で駅弁食べますか? ポテチを毎日3袋ずつ食べています。 優しいモラハラの見抜き方ってあるのか モテる女性の特徴は? 口蓋裂と結婚 らくになりたい 喪女の恋愛、結婚 炭酸水の使い道は キリスト教やユダヤ教は、人殺しは地獄行きですか? カテゴリ [技術者向] コンピューター OS(技術者向け) Windows系OSLinux系OSBSD系OSSolaris系OSiOS(技術者向け)Android OS(技術者向け)その他(OS) カテゴリ一覧を見る あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど
お礼
ありがとうございます。 find / -ctime +`date +%j` でOKでしょうか?
補足
+%jと前に+をつける理由は何かあるのですか?