アプリ版:「スタンプのみでお礼する」機能のリリースについて

test1.tex test2.tex test3.tex test4.tex test11.tex test12.tex test13.tex test14.tex

test101.tex test102.tex test103.tex test104.tex

ファイル名置換を用いてtest1.tex test2.tex test3.tex test4.tex以外のファイルをすべて消すにはどうすればよいのでしょうか?

一つのワードでファイルを指定する なぜその方法で消せるのかも教えて頂きたいです

A 回答 (2件)

UNIX系OSは、昔から本質はカーネルにあって


操作するための環境としてのシェルにもいくつもの種類がありました。

WindowsではCMD.EXEがありますが、これを示す表現として
DOS窓とかコマンドプロンプトとか、いろんな呼び方があります。
これは指し示すべきものがCMD.EXE一つしか無いからです。

UNIX系OSでは、シェルとしてはもちろんGUIシェルも一般化していますが
その中で、コマンドシェル(CUIシェル)として
xtermなどのターミナルソフト(コンソールソフト)が使われています。
(ターミナルソフト、端末、端末エミュレーター、コンソール、コンソールエミュレーターといった表現もありますが
コンピューターがご本尊で、操作盤や操作端末が別に設置されていた時代から引き継がれた言葉で
指し示しているものはUNIX系OSでは同じものということになります。)


xtermは唯一のコマンドシェルでは無く
かつてxtermが日本語処理ができないこともあり
いろんな日本語対応のターミナルソフトが使われています。

たとえば、ktermが日本語対応として早い時期に提供されていましたし
GNOMEデスクトップ環境にはgnome-terminal
KDEデスクトップ環境にはkonsole
LXDEにはlxterminal、そのほかrxvtなどいくつもあります。

乱立は開発力の分散や互換性の問題を産みそうですが、問題とはなっていません。
それは、これらはCUIシェルをラッピングしたソフトウェアだからです。

付加機能だけが、個別に開発されているものだと言えます。
実際のシェルとしての本質は、別のコマンドシェルソフトが処理しています。


それが、シェルスクリプトの1行目に指定される/bin/shやbashなどです。
標準となるのがshで、自動処理するためのシェルスクリプトでは
明示的にshを指定することで、互換性の問題が避けられています。

bashは現在のデファクトスタンダードと認識しています。

Linuxのほか、MacOSXにも、Windows上のCygwinにもbashが用意されています。
bashはshから改良されたものですが、詳細は割愛します。
代表的なのは、もはや必須のTABキーによるファイル名補完機能でしょう。


で、本題ですが、ファイル名の指定などには、入力を解釈するコマンドシェルが
そのための機能を持っている必要があります。

ですから、質問の本質は、xtermの問題ではなく、コマンドシェルの
実質的には、たぶんbashの問題ということになります。


で、shやbashなどUNIX系のコマンドシェルでは、正規表現が使えるのが普通です。http://ja.wikipedia.org/wiki/%E6%AD%A3%E8%A6%8F% …

正規表現は、そのまま扱えない記号を扱ったり
複数のファイルを指定するための表現などが定められています。
テキストエディターの検索/置換機能にも正規表現を使えるものがあります。
(私はテキストエディターで行頭"^"や行末"$"を指定する正規表現をよく使います)


MS-DOSでも、アスタリスクや?による表現が広く知られていますが…
残念ながら、COMMAND.COMやCMD.EXEには、まともな正規表現機能はありません。

なんと、アスタリスクによる処理などは、個々のソフトが独自解釈しているらしいとか orz
MS-DOS時代には、たまに、*.jpgといった指定で複数ファイルを指定できないソフトに出会ったりしたものです。
(Vz+BLOCK.DEFを使って、DIR出力から、連続処理するバッチファイルへと加工して動かしていました)


なお、xtermは標準的なターミナルソフトとして、今も広くインストールされています。
軽量版ではPuppy Linuxで採用されていたと思いますがrxvtがあります。
これはターミナルの歴史的経緯からxtermに含まれている古い機能などが省略されています。

現在の標準的なターミナルソフトには
ウェブブラウザーと同じようにタブ機能があったり
いろいろな改良点があります。

いろんなことをコマンドシェルで行えるようになると
一つのウィンドウの中で、いくつもの処理を行えるので
タブ機能があるほうが、管理しやすくなったりします。


今や、表示されている文字を選択してコピー&ペーストできるのが普通ですから
ウェブで仕入れた作業手順を、ペーストでこなせたりします。

表示されたテキストファイルの中にURLが記述されていれば
それがリンクとして扱えるものもあります。

ちょっと変わったもので、KDEのGUIファイラーとしてdolphinがありますが
このソフトではウィンドウ下部に、ターミナルを開く機能があり…
GUIでのフォルダー移動に、ターミナル側のカレントディレクトリーを連動させる仕組みがあります。
    • good
    • 0

rm test1[0-4]*tex



xterm 関係ないじゃん。

この回答への補足

xtermでの話なんですがxtermが関係ないというのは

どういうことなんでしょうか?

まだ私は情報処理の授業を数回受けただけなので仕組みが全く分かっていません

よろしければ説明して頂けないでしょうか?

補足日時:2012/01/10 02:11
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!