• ベストアンサー

" ls -l " から、指定縦列の中から、grepする方法

noname#243622の回答

noname#243622
noname#243622
回答No.2

日本語環境ではなくて、英語環境にしてはどうでしょう。 環境変数LANGをCに設定してください。 (cshの場合) setenv LANG C (bashの場合) export LANG=C そうすると "5月" の部分が "May" になりますから、 ls -l | grep " May " で取得するか ls -l | awk '$6=="May" {print}' で取得できるでしょう。 前者は月表示の前後にスペースがあることを期待してる表現です。後者は6列目が"May"だったらという意味になります。

Piranha
質問者

お礼

awk を学習した結果、 ls -ltr | awk '{print $6, $9;}' | grep '^5' 5月 abc-11.txt 5月 abc-6.txt 5月 abc-71.txt と、該当月と該当ファイル名だけを標準出力されるまでにしか 今のところならないのかな、と思われます。 これ以上だとスクリプトを作りこみ、コマンドとして用意しなくては ならないのかなぁ? とコマンドとして使用するのを敬遠してます・・・

Piranha
質問者

補足

これは、これも確かにありです。 早急的にはとてもイイと思いましたが、恒久的に考えると・・・ 社内環境上・・・・デメリットが浮上します。 awk については無知ですので、ちょこっとググって見てみましたが、 Mayでは無いほうで、いけるのかなと色々試して期待してみるのも、実際は全然いけてなく、結果NGなのが実情です。

関連するQ&A

  • ls -lの見方を教えてください。

    ls -lのパーミッションの次にでてくる数字はファイルとディレクトリの場合で何を表すか教えてください。 [root@hogehoge etc]# ls -l /etc/sysconfig/networking/profiles/default/ 合計 36 -rw-r--r-- 2 root root 146 8月 25 23:12 hosts -rw-r--r-- 3 root root 221 8月 25 23:12 ifcfg-eth0 -rw-r--r-- 3 root root 147 8月 25 23:12 ifcfg-eth1 -rw-r--r-- 1 root root 0 8月 25 23:12 network -rw-r--r-- 2 root root 80 8月 25 23:12 resolv.conf

  • ls -l でのパーミッションの右横の表示

    こんにちは。Fedora 11を使っています。 ls -l の出力において、パーミッションの右隣に表示されるドットの意味は、何なのでしょうか? 下記の例(ls -l /etcの結果の一部)で、passwd- の方についているドットのことです。) -rw-r--r-- 1 root root 1885 2009-07-25 12:17 passwd -rw-r--r--. 1 root root 1840 2009-07-02 20:06 passwd- マニュアルを見ても、「ACLが設定されている場合は+が表示される」の説明しか見つけることができず、困っています。 (なお、ACLは設定していません。) よろしくお願いします。

  • Linux ls -l について

    Linuxで「ls -l」を実行した時の一番上に出てくる合計とは何の事なのでしょうか? 調べてもよくわからないのでお手数ですがご存じの方教えて頂けると助かります。 例) 合計 4 ←この部分 -rw-r--r-- 1 xxxxxxx yyyyy 67 2月 27日 09:42 a -rw-r--r-- 1 xxxxxxx yyyyy 127 2月 27日 09:43 b

  • ls -l コマンドの結果から月の値だけを取りだしたい

    皆さん、お手数ですが教えて下さい。 今Linux上で動作させるC言語のプログラミング作業を行っているのですが、その過程において以下のコマンドラインから”月”の数値を取り出したいと思っています。 (sprintfで編集したコマンドをsystemコマンドで。) > ls -l test_11.c -rw-rw-r-- 1 user1 group 5431 9月 25 18:02 test_11.c 以上の表示結果から、lsコマンドとawkコマンドを組み合わせて、月の数値を取り出したいのですが、 この例で言うと、月の部分には”9月”と全角の「月」という文字が付いてきます。 取り出したいのは「9」の値だけなのです。 上手くこの月の数値だけを取り出すオプションとか無いでしょうか? もちろん、複数のコマンドをパイプで繋げるのは一向に構いません。 よろしくお願いいたします。

  • "ls -l"でのタイムスタンプ表示について

    UNIXコマンド"ls -l"を実行した際に表示されるタイムスタンプに ついての質問です。 上記のコマンドを実行すると、通常下記の(1)のような結果が得られますが (1)-rw-rw-rw- 2 mine project 512 May 7 15:12 aaa.txt 下記のような少し古いファイルになると、タイムスタンプの 時間の表示のところが"year"を表示してしまいます。 2000年のファイルに関してはしょうがないかもしれないのですが 今年2001年のファイルまで、時間の表示が出なくなってしまってます。 (2)-rw-rw-rw- 1 mine project 1242 Oct 13 2000 bbb.txt (3)-rw-rw-rw- 1 mine project 3342 Jan 9 2001 ccc.txt この"year"表示を"時間"表示に直す設定を知ってる方いましたらご教授願います。 ちなみに、昨年以前のファイルに関しては、やはりしょうがないということでしょうか? OSは Solalis2.6で、私はかなりの初心者です。 尚、UNIX関連の質問って他にいいカテゴリありますか? ここで問題ないでしょうか?

  • 日本語ファイルの閲覧方法

    [root@cifstest ~]# ls -l /home/cifs/ -rw-r--r--. 1 1002 499 22 2月 7 21:31 2013 aaa.txt -rwxrw-rw-. 1 root 300 0 2月 7 21:07 2013 あああ.txt NASドライブ共有フォルダをlinuxにてマウントしています。(/home/cifs) マウントした/home/cifsをlsで確認した結果が上記内容になります。 aaa.txtとあああ.txtがあるのですが、 linuxターミナル(teraTerm)から、「cat あああ.txt」で中身を見ようとすると 「cat: あああ.txt: そのようなファイルやディレクトリはありません」 と表示されます。 linux(Teraterm)から、「あああ.txt」を確認する方法はないでしょうか? ご教授お願いします。

  • makeコマンドができない

    基本的なことだと思いますがお願いします。 fedore core で色んなことをやってみようと思い sl を インストール していたのですがmakeができないのです。インストール通りにできないの はなんでですか? makeコマンドは /usr/bin にありました。 的はずれなこと言っていたらすみません。 [root@localhost sl]# ls -lrt 合計 36 -rw-r--r-- 1 3605 lock 4101 1月 19 1994 sl.h -rw-r--r-- 1 3605 lock 980 1月 19 1994 sl.txt -rw-r--r-- 1 3605 lock 689 1月 19 1994 sl.1 -rw-r--r-- 1 3605 36 417 7月 22 1998 README -rw-r--r-- 1 3605 36 331 7月 22 1998 Makefile -rw-r--r-- 1 root root 76 10月 31 2005 install.txt -rw-r--r-- 1 3605 36 7131 10月 31 2005 sl.c [root@localhost sl]# more install.txt 1. # tar xvf sl.tar 2. # cd sl 3. # make 4. # cp sl /usr/local/bin/ 5. # sl [root@localhost sl]# make cc -O -o sl sl.c -lcurses -ltermcap make: cc: コマンドが見つかりませんでした make: *** [sl] エラー 127

  • execからのls grepコマンドについて

    PHPで階層になっているディレクトリ名をすべて取得するプログラムを作成しています。 ディレクトリ数、ファイル数が非常に多いので動作速度向上のためにlinuxコマンドで取得するために以下の命令を記述しました。 exec("ls -l | grep '^d' ./hogehoge/hugahuga/",$aDir); var_dump($aDir); これを実行しても $aDirに値が入りません。 どうすれば望みどおりの結果になるでしょうか。

    • 締切済み
    • PHP
  • SNMPの標準MIBについて

    お世話になります。 現在SNMPの勉強をしているところですが、標準MIBについていまいちピントきません。。 基本的な質問で申し訳ないのですがご教授ください。 標準MIBとはMIB2(RFC1213)で定義されているMIBとのことですが、 先程CentOSにnet-snmpをインストールしたところ、/usr/share/snmp/mibs配下に RFC1213-MIB.txtを見つけたのですが、これ以外にも多くのテキストファイル(MIB)がありました。 [root@CentOS_Server mibs]# ls -tlr /usr/share/snmp/mibs/ | grep MIB -rw-r--r-- 1 root root 79667 May 26 2010 RFC1213-MIB.txt -rw-r--r-- 1 root root 29305 May 26 2010 SNMPv2-MIB.txt -rw-r--r-- 1 root root 9106 May 26 2010 SNMP-PROXY-MIB.txt -rw-r--r-- 1 root root 16414 May 26 2010 TRANSPORT-ADDRESS-MIB.txt -rw-r--r-- 1 root root 16782 May 26 2010 INET-ADDRESS-MIB.txt -rw-r--r-- 1 root root 5066 May 26 2010 IF-INVERTED-STACK-MIB.txt -rw-r--r-- 1 root root 3518 May 26 2010 IANA-RTPROTO-MIB.txt -rw-r--r-- 1 root root 24723 May 26 2010 NOTIFICATION-LOG-MIB.txt -rw-r--r-- 1 root root 4400 May 26 2010 IPV6-UDP-MIB.txt -rw-r--r-- 1 root root 7257 May 26 2010 IPV6-TCP-MIB.txt ・・・以下省略 標準MIBファイルとはRFC1213-MIB.txtのことを指すのでしょうか。 それとも、RFC1213-MIBだけでなく、このディレクトリにあるMIBファイル全てを指すのでしょうか。 宜しくお願いいたします。

  • コマンド履歴が~/.bash_historyに保存されない

    通常、コマンド履歴は~/.bash_historyに保存されるはずだと思っていましたが保存されていないようです、原因がわかりません。 助けて頂けませんでしょうか [root@localhost sub]# su - hoge [hoge@localhost ~]$ ls Desktop i a testdir ec.txt [hoge@localhost ~]$ tail ~/.bash_history set|grep abc abc=`date` set|grep abc echo $abc abc=1 echo $abc abc=$(date) echo $abc alias exit