Possible Duplicate:
How can I use inverse or negative wildcards when pattern matching in a unix/linux shell?一覧私は<code>ls</code>ため<code>man</code>ページを読んだ
セレクタに一致しないすべてのファイル(使用してLS)、およびIは、ファイルセレクタに一致ないを行うことすべてを一覧表示するためのオプションを見つけることができません。あなたはこの操作を実行する方法を知っていますか?例えば
: は私のディレクトリはこれです言うことができます:
> ls
a.txt b.mkv c.txt d.mp3 e.flv
今、私は、次の
> ls -[SOME_OPTION] *.txt
b.mkv d.mp3 e.flv
をする何かをしたいと思い、このようなオプションがありますか?
もし出力しない場合は、ls
の出力を、私が望むものだけを表示する別の機能(おそらくsed
)にパイプする方法がありますか?
私はこれを行うために正確にどのように知りませんが、私はそれはようなものになるだろう想像している:私は本当にsed
、awk
、およびgrep
を使用する方法を学ぶ必要がありますが、私は続ける
> ls | sed [SOMETHING]
正規表現を書く方法を理解していない。私は正規表現の概念をはっきりと理解していますが、異なる構文を使用する正規表現の間では混乱します。
ご協力いただければ幸いです。
EDIT:
私は私は、Mac OS Xを実行していることを言及するのを忘れてしまったので、機能は私の混乱の一部、したがって(UNIX/Linuxのシェルの他の回答で述べたものとは多少異なる場合がありますsed
,awk
、およびgrep
)。
' path'パラメータとして多くの異なるセレクタでうまく動作します私が見つけたのは、 '' find。-maxdepth 1!-path "* txt" 'も実行できるということでした。 リストをフィルタリングする正規表現があれば、どうすればいいですか? –
ifたとえば、 "abc"のような3つのファイルがあり、ls | grep -v "[a | b]"を使用すると、cと表示され、3つのファイルにaaaaa、使用する "ls | grep -v "a +"を指定すると、 "a"だけが表示されます。 –
./ findコマンドはすでに現在のディレクトリツリーから検索を開始しているため、引数はオプションです – kante