• ベストアンサー

dosバッチを使用して昇順に

お世話になります。 dosバッチを利用して、1桁と2桁が混ざった数字を昇順にソートしたいのですが、ただ単にsortで行うと2桁のものはソートされますが、1桁のものはところどころ違う場所に入ってしまいます。 1桁の数字と2桁の数字を分けてソートして後でファイルを合わせたらいいのかとも思いましたが、バッチで1桁と2桁を分ける方法が見つかりません。(探し方が悪いのかと思いますが) どなたか教えていただけるとありがたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4856/10272)
回答No.1

Windows標準のsortコマンドでは、文字列としての比較でソートするので、数字としての比較は出来ません。文字としての大小は、 0 < 1 < 10 < 11 .. 19 < 2 < 20 < 21 ... 案1:非標準のソートツールをインストールする 案2:全部2桁に変換してからソートする

mino_tan
質問者

お礼

回答ありがとうございますm(_ _)m やはりできないという事で、頭に0をつけてソートさせてから 外すように考えてできました。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • 2kaku34
  • ベストアンサー率30% (101/329)
回答No.3

notnot さんの通りだと思います。 正規表現の使えるエディターを使うのが、良いと思います。 K2Editor http://www.vector.co.jp/soft/win95/writing/se126077.html 秀丸エディタ http://hide.maruo.co.jp/software/hidemaru.html 正規表現サンプル集 置換編 http://hodade.adam.ne.jp/seiki/page.php?chapter_4 行頭に文字を追加する http://hodade.adam.ne.jp/seiki/page.php?r_gyoutou_tsuika あと、Excelで、テキストファイルをインポート&エクスポート。 テキスト ファイルをインポートまたはエクスポート http://office.microsoft.com/ja-jp/excel/HP100997251041.aspx 後は、Excelで加工して、エクスポートする。

参考URL:
http://hodade.adam.ne.jp/seiki/
全文を見る
すると、全ての回答が全文表示されます。
noname#62543
noname#62543
回答No.2

数値としてsortする必要があります。 質問からは外れますがWindows環境で行なうならば cygwinのsortコマンドで -g パラメータを使えば出来ます。 $ sort -g ファイル名

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • DOSバッチのインターバルは可能?

    お世話になります。 WindowsのDOSでバッチファイルを作成しています。 バッチファイルの中で自動的に10秒間待機してから実行したいのですがそのようなコマンドはあるのでしょうか。 いろいろ調べておりますが見当たりませんのでこちらで質問させて頂きました。 ご教授宜しくお願い致します。

  • すでに昇順になっている配列

    既に昇順になっている配列を手に入れる方法 を考えています。 例えば、3桁の配列を手に入れたい場合 0,0,1 0,0,2 ・ ・ ・ 8,9,9 のみを手に入れて 0,1,0 1,0,0 0,2,0 2,0,0 ・ ・ ・ 8,9,8 9,9,8 は考えない(表示しない)、というものです。 思いついた方法が (1)3桁の数字をすべて(000から999まで)考える (2)各数字を配列にする (3)もし、昇順でなかったら、(1)に戻って数字を考え直す (4)昇順であれば、表示する。 というものです。 実際に、プログラムも作ってみました。 しかし 之では桁数が多くなるにつれて(例えば10桁など) 時間がかかりすぎてしまいます。 何か他に良い方法(アイディア、コレクションなど)をご存知の方いらっしゃいましたら、お力添えをお願いいたします。

    • ベストアンサー
    • Java
  • バッチ実行後DOS窓を閉じるには

    Windows Me 上での操作なんですが、バッチファイルをダブルクリックで実行後、自動的にDOS窓を閉じるようにしたいです。なおバッチファイルのプロパティに「終了時にウィンドウを閉じる」という設定があるのは知っているんですが、バッチファイル実行時に自動生成されるショートカットを消す為、下記の一行をバッチ内に加えたら「終了時にウィンドウを閉じる」の設定が無効になってしまいました。 del test.pif 動作的な希望としては、「バッチ実行後は自動でDOS窓を閉じる」と「ショートカットを生成しない」の2点をクリアしたいのですが。 良い方法がありましたらどうぞ宜しくお願い致します。

  • DOSバッチで文字数カウント

    DOSバッチでファイル内の文字数をカウントする方法をご存じの方はいませんでしょうか?? UNIXでいうところの「wc -c」です。 使用OSは、Windows2003ServerとWindowsXPです。 ユーティリティーなどは導入できず、DOSバッチで実現しなくてはなりません。 どなたかご助力をお願いいたします。

  • Cで、呼び元のDOSバッチを終了させたい

    DOSのバッチからexeを呼んで、そのexe内で呼び元であるバッチファイルの呼んだ行以降に行かないようにしたいのですが出来るでしょうか? バッチでerrorlevel拾って判断して終わらせる(EXIT? )のではなく、EXE内でDOS窓を閉じたいのです。 C++で書いてます。 どなたかわかる方知恵をお願いいたします。 出来ないというのでもかまいませんが・・

  • DOSバッチとバーコードリーダー入力

    DOSバッチを起動させた後、バーコードリーダーでIDを取り込み、 それを echo を使ってログファイルに書き出します。 そして、次の処理(xxxx.exe)を実行し、エラーがなければ、その旨 ログファイルに書き出す。 こういうことをやりたい、と考えております。 しかし、最初の部分 「DOSバッチを起動させた後、バーコードリーダーでIDを取り込み、」 この作り方がわかりません。 サジェスチョンをお願いします。

  • 昇順にならなくて困っています。

    お世話になります。 前任者が作成したexcel97の住所録、 左からコード(半角数字8桁)、名前、住所、電話・・・・ という見出し行のある表を引き継いだのですが、 コードを並べ替えようとしたところ、 昇順にならないのです。 コードの列のセル表示形式は「標準」になっています。 どのような原因が考えられるでしょうか。 よろしくお願いいたします。

  • バッチ処理のDOSウィンドウを消したい

    Win95ではバッチファイルのプロパティーで最小化を選択してできたのですが、Win2000でできません。 DOSウィンドウの最小化、できれば出さないようにできないでしょうか?

  • DOSバッチのコピーについて

    フォルダ内の複数ファイルを、別フォルダにコピーするバッチを作りたいと考えています。 具体的には、コピー元ファイルは、オリジナルファイル名+日付.CSVの法則で、100ファイル程度が毎日コピー元フォルダに出力されます。 コピーしたいファイルは、その都度、日付単位で変わるので、バッチ実行時に任意のコピーしたい日付を指定(入力)して、別フォルダに コピーさせたいのですが、何か方法ありますでしょうか? 尚、昔の馴染みがあり、理解しやすいので、DOSのバッチで実現できないでしょうか? 例 sample1_20081124.CSV sample2_20081124.CSV sample1_20081125.CSV sample2_20081125.CSV sample1_20081126.CSV sample2_20081126.CSV ↓ 20081125のファイルだけコピーする sample1_20081125.CSV sample2_20081125.CSV 宜しくお願い致します。

  • バッチ終了時にDOS窓を閉じるコマンド

    自作バッチについて質問があるのですが、 バッチ終了時にDOSプロンプトを自動的に閉じる方法を教えて下さい。 以下の方法は知っているのですが↓ ------------------------------------------------------------ バッチのプロパティ画面の「プログラム終了時にウィンドウを閉じる」を チェックする ------------------------------------------------------------ 上記のようなやり方ではなく、バッチファイルの中に直接コマンドを書いて 設定する方法を教えて下さい。

コンポからの音が極小になる
このQ&Aのポイント
  • コンポのCDプレイヤーをアンプから外してiPhoneと接続したが、音量が極小です
  • iPhoneのボリュームとコンポの音量を最大にしても、音が極小です
  • 問題の製品はオンキョーのオーディオで、型番はLBT-AVWAR501XBKです
回答を見る