|
495) 処理の番号振り分け方法 KKY 2002/07/22(月) 09:15 |
|
現在システム管理をメインに行っている者です。 DOSでのバッチスクリプトを書いているのですが、 どうしても自分で解決出来なく、ここに投稿させて頂きます。 net view コマンドで出した結果に数字を指定したいのでしすが、 その方法がどうしても分かりません。 具体的な例を上げると、下の様にしたいのです。 C:\>net view \\W2K-1 user1 - cpqap40 - Windows 2000 \\W2k-2 user2 - cpqap55 - Windows 2000 \\W2k-3 user3 - cpqap40 - Windows 2000 \\W2k-4 user4 - cpqap55 - Windows 2000 \\W2k-5 user5 - cpqap55 - Windows 200 \\W2k-6 user6 - cpqap55 - Windows 2000 この結果に、数字を付けることによって下の様に出したい のです。 1 \\W2K-1 user1 - cpqap40 - Windows 2000 2 \\W2k-2 user2 - cpqap55 - Windows 2000 3 \\W2k-3 user3 - cpqap40 - Windows 2000 4 \\W2k-4 user4 - cpqap55 - Windows 2000 5 \\W2k-5 user5 - cpqap55 - Windows 2000 6 \\W2k-6 user6 - cpqap55 - Windows 2000 とりあえずDOS用のsedやawkコマンドも用意したのですが、事故解決にまで結びつくことは出来ませんでした。どうかご存知の方いましたらご教授をお願いいたします。 |
|
499) Re:処理の番号振り分け方法 SYSOP 2002/07/24(水) 12:17 |
|
KKYさん こんにちは。 >net view コマンドで出した結果に数字を指定したいのでしすが、 >その方法がどうしても分かりません。 >1 \\W2K-1 user1 - cpqap40 - Windows 2000 >2 \\W2k-2 user2 - cpqap55 - Windows 2000 >3 \\W2k-3 user3 - cpqap40 - Windows 2000 >4 \\W2k-4 user4 - cpqap55 - Windows 2000 >5 \\W2k-5 user5 - cpqap55 - Windows 2000 >6 \\W2k-6 user6 - cpqap55 - Windows 2000 > >とりあえずDOS用のsedやawkコマンドも用意したのですが、事故解決にまで結びつくことは出来ませんでした。どうかご存知の方いましたらご教授をお願いいたします。 たとえば、 net view | find "\\" | find /n "\\" ……とすると、"\\"がついてる行だけを抽出してそれに1から行番号をつけることが可能です。findstrでも似たようなことができるようです。 ただ、出力結果はご希望の書式とはちょっと違うかもしれません。 要は、 ・テキストファイルを1行ずつ読み込んで ・不要な行は省きつつ、行頭に行番号をつけて(あとの処理に都合のいい書式で)出力する ……というだけの処理でよいわけですから、ぼくだったら自作しちゃうと思います。cとかpascalとかでも可能ですし、ご質問にあるawkもこのての処理には向いているようです(実は使ったことがないので、直接のアドバイスは無理ですが……)。 awkは用意された、とのことですから、あわせて入門書とかも入手し、少し集中してトライされるのが早道なんではないかと思います。 YanaKen |