トップページヘもどる

ポコ太とパソコン

  ポコ太のパソコンに関するメモ(あまり勉強していません 間違ってたらごめんなさい)

Windows 2003編

Windows 2000編

アライドスイッチのコマンド

ルータ編

バッチ編


Windows 2003編

 シャドウコピーのタスクスケジュールを1つ削除しても復活する

 クライアントからリモートデスクトップで接続できなくなった


 シャドウコピーのタスクスケジュールを1つ削除しても復活する

  タスクを無効にしてもいつのまにか有効化されている。
  アクセサリーシステムツールータスクで設定せずにコンピュータの管理のディ
  スクの管理で設定すると変更できた。
  R2ではすんなり設定できた。
  面倒なので再インストールしての検証は行っていない。


 クライアントからリモートデスクトップで接続できなくなった

  ある日突然リモートデスクトップで接続できなくなった。
  その他のサーバ機能は生きているようだ。ローカルでログオンするとシステム
  リソース不足のメッセージが現れ既定のプロファイルでログオンされる。
  ターミナルサービスのサービスを再起動しようとするもターミナルサービスは手動
  での制御ができない。一度ユーザプロファイルを削除してからログオンし直して
  プロファイルを再作成するとターミナル接続は回復したがしばらくしてまた同様の
  事象となる。
  サーバを再起動しようとMSCSのリソースをスタンバイサーバに移動するとリソース
  不足のメッセージは解消されターミナル接続もできるようになる。

  その後20日程度運用していたところ再度事象が発生。
  HKEY_LOCAL__MACHINE\System\CurrentControlSet\Control\Session Manager
  \Memory ManagementのSessionViewSizeとSessionPoolSizeの値を変更してみるが
  解決せず。
  再起動前のクラスタリソースの移動で回復する。

  環境はWindows Server 2003 Enterprise EditionSP1でMSCSにより2台をクラスタの
  アクティブとスタンバイで使用。アクティブ側のサーバで発生。スタンバイ側は問題なく
  動いている。CPUは3.?GHzデュアルコアタイプ、メモリは5GB程度。


Windows 2000編

  DNSのフォワーディング先が1箇所しか指定できない

  DNSのフォワーダが指定できない

  DNSキャッシュの情報を消したい

  クライアントがWindows 2000のDNSではなくUNIXのDNSを使っている

  DCPROMOを実行してうまくいったはずなのに再起動後、途中で立ち上がらない

  Computersコンテナ上に表示されているコンピュータの数が異様に少ない

  信頼関係を結ぶとき相手のコンピュータがみつからない

  アカウントとパスワードがうまく通らない

  Active Directoryサイトとサービス

  クライアントでログオン失敗の監査が多発していたとき

  パッチ処理が止まる

  コピーが遅い

  ファイルの移動

  意外と使えるターミナルサービス

  困ってしまったショートカッ

  Windows 2000 SP4におけるイベント


  DNSのフォワーディング先が1箇所しか指定できない

    Windows 2000の仕様であろうか。
    Windows 2003からは複数指定ができるようになったらしい。

  DNSのフォワーダが指定できない

    DNSサーバを構築するときにルートとして構成するとルートサーバの
    設定画面やフォワーダ先の指定がグレーアウトして設定できなくなる。
    DNSを再構築するしかないのかと一年間悩んでいたが、インターネット上
    で.エントリを消せばいいという記事を発見。ドキドキしながら削除すると
    無事フォワーダ設定ができた。

  DNSキャッシュの情報を消したい

    サーバでDNSの設定を変更してもクライアントはキャッシュに古い情報を
    持っていてすぐに反映されない。いちいち再起動するのも面倒と思っていた
    ら、コマンドプロンプトからipconfig /flushdns と打てばよいことがわかった。
    XPクライアントならネットワークの修復でいい。

  クライアントがWindows 2000のDNSではなくUNIXのDNSを使っている
  (しかもUNIXではWindows名前解決を行わない)

    WINSを使っているが何故か2000、XPクライアントはドメイン参加できない
    全クライアントにlmhosts、hostsファイルを作成する。

    lmhosts

      IP1 ドメインサーバ1 #PRE #DOM:ドメイン名
      IP2 ドメインサーバ2 #PRE #DOM:ドメイン名
      IP1 ドメインサーバ1.ドメイン名
      IP2 ドメインサーバ2.ドメイン名
      IP1 ドメイン名
      IP2 ドメイン名

    hosts

      127.0.0.1 localhost
      IP1 ドメインサーバ1
      IP2 ドメインサーバ2
      IP1 ドメインサーバ1.ドメイン名
      IP2 ドメインサーバ2.ドメイン名

       かなり適当に書いた感はあるがうまくいった

      IP1 ドメインサーバ1 #PRE #DOM:ドメイン名
      IP1 ドメインサーバ1 “ドメイン名 \0x1b” #PRE
      #             123456789012345

       本当はこんなふうに書いたほうが良かったのではないかと思う今日この頃。
       でも何百台も設定し直すのは嫌だ。

  DCPROMOを実行してうまくいったはずなのに再起動後、途中で立ち上がらない

    サーバ2台構成でプライマリDNSサーバを自分、セカンダリDNSを相手側に
    設定しているときにうまくいかないことが何回かある。一度セーフモードで立ち
    上げてDNSのアドレスを入れなおすとうまくいった。


  Active Directoryユーザとコンピュータ

  Computersコンテナ上に表示されているコンピュータの数が異様に少ない

    3000弱のドメイン参加クライアントがいるにも関わらず表示されたコンピュータは
    500ちょっと。NT4.0時代のサーバマネージャでは98系クライアントも表示できたが
    2000ではドメイン参加しているNT系しか表示されない模様。

  Active Directory ドメインと信頼関係
  信頼関係を結ぶとき相手のコンピュータがみつからない

    DNSやlmhostsできちんと名前解決ができていないと信頼関係は結べない。
    当然のことであるが結構忘れていて何度か失敗した。

  アカウントとパスワードがうまく通らない

    Windowsの場合、ドメイン参加していなくても自分のPCのアカウントとパスワードが
    ドメインのものと一致していれば共有フォルダにアクセスできる。別ドメインからの
    アクセスでもいいのだがドメイン同士で信頼関係を結んだとたんにアクセスできなく
    なる。自分がアクセスできる方向の信頼関係ならアクセス権を設定すればOKなだけ
    だが逆方向の信頼なら運用を考え直さなければならない。

  Active Directoryサイトとサービス

    ・Active Directoryユーザとコンピュータを扱った後、クライアントがすぐにアクセスできない
    ことがある。コンピュータ同士の複製をしておくと早く反映される

  その他
  ・クライアントでログオン失敗の監査が多発していたとき

    クライアントAとクライアントBのIPアドレスの重複が原因のケース。AがPCを立ち上げる
    とIPアドレスの重複のメッセージがでて、このままではネットワークが利用できないので
    普通ならシステム管理者に連絡するところだが、当人はなんとネットワークケーブルを
    引き抜いてログオン、その後ネットワークケーブルを繋ぎなおして共有フォルダにアクセス
    していたらしい。

  ・パッチ処理が止まる

    深夜帯にバックアップを実行するためxcopyのパッチをしかけていたが複製後の容量が
    どうしても少ない。途中で止まってしまっているようだ。調べてみるとある個人用のフォルダ
    でエラーが出る。アクセス権を見てみるとなんとAdministrators アクセス権なしが設定されて
    いた。いったい何の意味があるのだろう。
    次回からはバックアップソフトでバックアップを行うことにする。

  コピーが遅い

    年々、大容量のハードディスクになっていくが、ファイルコピーの速度はあまり速くなって
    いない。それにしても速度が遅い、遅すぎる、家のPCの方が速いじゃないか、と思ったら
    どうやらファイル数の関係かもしれない。家のPCで一度にファイルをコピーするにしても
    せいぜい何十の単位、それに比べて何十万というファイル数、しかも画面上に・・・ファイル
    をコピー中と表示するだけでも時間がかかりそうである。
    画面表示を消す方法があるらしいという話は聞いたことがあるが見つけきれなかった。しかし、
    xcopyコマンドでコピーを試みたが速さは大して変わらない。困ったものである。

  ファイルの移動

    やむを得ない事情から現用のフォルダを別ドライブに移動することとなった。移動自体は
    フォルダをドラッグアンドドロップで難しいことではないのであるが、読み取り専用ファイルや
    システムのファイルがあるとその都度どうするか聞いてくる。10時間それのチェックのために
    マシンの前にいるのは苦痛である。最初xcopyを使おうと思ったがAdministrator アクセス権
    なし を設定してあるファイルがあるかもしれない。また運用中のフォルダのためコピーの間
    はユーザがアクセスできない。当然休日の深夜になる。そこで目をつけたのがバックアップ
    ソフト。前日に移動するフォルダをフルバックアップでとっておくのだ。そして目的のドライブ上に
    リストアしておく。その後ユーザアクセスを規制してから差分バックアップを行い、移動先の
    ドライブに差分リストアを行えばものの数十分で終了する。ポコ太は休日の朝、確認するだけ
    でよいのであった。

  意外と使えるターミナルサービス

    ポコ太は旧ファイルを削除する為に検索を行った。一年分の検索を四半期ごとにやってどの
    くらいの容量があるのか調べていたのであるが、少々焦っていたため同時にやってしまった。
    サーバからの返りが遅くなる。しまったと思ったときはご存知のようにクリックひとつの動作が
    サーバに負担をかけ何分も待つことになる。当然ユーザからはアクセスできないという苦情が
    殺到する。
    ポコ太は困ったときのCtrl + Alt + Del を押した・・・自分のPCの終了画面が出てきた。そう、
    ポコ太はターミナルサービスでサーバに入っていたのだった。仕方無しにひたすら待ち続け
    アプリケーションの強制終了までこぎつけた。なんとか再起動は免れた。
    しかし、共有フォルダのアクセスは全くきかなかったのにターミナルサービスの接続が切れ
    なかったのは不幸中の幸いであった。

  困ってしまったショートカット

    職場毎に別ドライブにワンタッチで行ける様ショートカットを作った。バッチの嫌いな(作れない)
    ポコ太は120以上のフォルダに一つ一つショートカットを作った。その作業は大した時間がかかる
    ものではなかった。ところがユーザから「アクセスできない」の連絡が。作ったばかりのショート
    カットを見てみると、な、ない。なくなっている職場多数、ショートカットが壊れている職場が多数、
    ショートカットのアイコンがブリーフケースになってしまったものが2つ。なぜ壊れたかは原因不明
    だが、なくなっているものはきっとユーザが消してしまったに違いない。
    ポコ太は一つ一つのショートカットにアクセス権(読み取りだけ)を設定したとさ。
    疲れた。

  Windows 2000 SP4におけるイベント

    アプリケーション

ソース ID メッセージ 原因
VxSvc_fsys 803 Failed to format drive \Device\Harddisk0\Partition2. フォーマットの失敗
Event Report 1000 エラーが発生しました。 指定されたパスが見つかりません。 得体の知れないフリーソフトを動かしたがうまくいかなかった。
Userenv 1000 コンピュータ ネットワークためのドメイン コントローラ名を取得できません。戻り
値は (2146) です。
イチゴドメインのためDNSへの登録ができないのかも。
IISInfoCtrs 1003 IIS 管理サービスのパフォーマンス データを照会できません。 レジストリによって返されたエラー コードは DWORD 0 のデータです。 このメッセージに関する追加情報については、以下のマイクロソフト オンライン サポートのサイトを参照してください: http://www.microsoft.com/contentredirect.asp. Webサービスを停止しているため?
起動する毎に出る。
W3Ctrs 1003 W3SVC (HTTP) サービスのパフォーマンス データを照会できません。 レジストリによって返されたエラー コードは DWORD 0 のデータです。 このメッセージに関する追加情報については、以下のマイクロソフト オンライン サポートのサイトを参照してください: http://www.microsoft.com/contentredirect.asp Webサービスを停止しているため?
起動する毎に出る。
Backup Exec いろいろ いろいろ バックアップ時のエラー。バックアップをキャンセルしただけでも出るので気にしない。
APCPBEAgent 3005 "通信なし" サーバフリーズによる通信障害。
MsiInstaller 11706 製品: Norton AntiVirus Corporate Edition -- エラー 1706.製品 NortonAntiVirus Corporate Edition に対する正式なソースが見つかりません。WindowsInstaller を継続できません。 この場合はサーバフリーズのためと思われる。
Backup Exec Catalog Server 34326 カタロク゛インテ゛ックス(C:\Program Files\VERITAS\BackupExec\NT\Catalogs\BeTopCat.idx)へのアクセスに失敗しました。理由:TheMicrosoft Jet database engine cannot find the input table or query'BackupSet'. Make sure it exists and that its name is spelled correctly.DAO.Parametersd:\b ディスク障害でカタログ情報が壊れたため。
回復方法はVeritasのサイトにて。
Backup Exec Catalog Server 34327 カタロク゛インテ゛ックス(C:\Program Files\VERITAS\BackupExec\NT\Catalogs\BeTopCat.idx)の更新に失敗しました。理由:Table 'Media'doesn't exist.DAO.Databased:\be\rabi\3808r\becat\server\catalogindex.cpp(1552) ディスク障害でカタログ情報が壊れたため。
回復方法はVeritasのサイトにて。
Backup Exec Catalog Server 34334 カタロク゛サーハ゛ーがDAOエラーを報告しました: 3078: The Microsoft Jetdatabase engine cannot find the input table or query 'BackupSet'. Make sureit exists and that its name is spelled correctly. DAO.Database。 ソースファイル: d:\be\rabi\3808r\becat\server\catdaoiterator.cpp(261) ディスク障害でカタログ情報が壊れたため。
回復方法はVeritasのサイトにて。




    システム

ソース ID メッセージ 原因
CIOArrayManagement 1 scsi: LUN bad, ha index 1, device 3, LUN 0 SCSI接続機器の障害。
この時はDLT障害
aic78xx 9 デバイス \Device\Scsi\aic78xx1 はタイムアウト期間内に応答しませんでした。 SCSI接続機器の障害。
この時はDLT障害
KDC 11 名前が host/ooooo.xxx で種類が 10 のアカウントが複数あります。 同じセキュリティ情報のクライアントが複数存在。よくわからん。
dlttape 15 デバイス \Device\Tape0 はまだアクセスできる状態ではありません。 DLT障害。
Ntfs 55 ディスクのファイル システム構造は壊れていて使えません。 chkdsk ユーティリティをボリューム D: で実行してください。 ディスク障害。
Server Administrator 1104 Fan sensor detected a failure valueSensor location: Hard Drive Fan 2Chassislocation: Main System ChassisPrevious state was: OK (Normal)Fan sensor value(in RPM): 22606 ファン障害?
でも動いていた。
サポートセンタでは管理ソフトのバージョンの可能性もあるということだったがファン装置一式を交換したら出なくなった。
TermServDevices 1106 プリンタをインストールできませんでした。 リモートデスクトップのクライアント設定でプリンタを使用するチェックがデフォで入っているので外さないとサーバ側でエラーが出る。
通常使用のクライアントのチェックを外しておけば知らない端末からのリモート接続をチェックできる?
TermServDevices 1111 プリンタ __oooooo に必要なドライバ xxxxx が認識されません。管理者に問い合わせてドライバをインストールしてから、もう一度ログインしてください。 リモートデスクトップのクライアント設定でプリンタを使用するチェックがデフォで入っているので外さないとサーバ側でエラーが出る。
通常使用のクライアントのチェックを外しておけば知らない端末からのリモート接続をチェックできる?
Srv 2006 サーバーは \\○○○○○ から誤った形式の要求を受信しました よくわからない。クライアント側の問題ではなかろうか。
Server 2510 サーバー サービスはエラー コード 1723 をマップできませんでした。 DNSからの取得エラーではないかと思われるが不明。
Server 2511 サーバー サービスは共有リソース xxxxx$ を再作成できませんでした。ディレクトリ d:\xxxxx が存在しません。 共有ファイルの共有を解除する前に削除してしまったため起動毎に出る。
レジストリを削除すればでなくなるが面倒くさいので放置。
Server 2511 サーバー サービスは共有リソース VPALERT$ を再作成できませんでした。ディレクトリ C:\PROGRA~1\NAV\alert が存在しません。 NAVでエラーが発生している模様。
起動時に発生するが管轄外で手出しできず。
NETLOGON 3096 このドメインの Windows NT ドメイン コントローラが見つかりません。 ディスク障害時に発生しているのでネットワーク障害かDNSがうまく動かなくなったか自分で自分がわからなくなったか。
afamgt 4098 \Device\AFA0 : 0:5:0 failed 等いろいろ ディスク障害。
afamgt 4098 \Device\AFA0 : Drive 0:5:0 offline on container 0: ディスク障害。
NETLOGON 5719 ドメイン xxxxxxxx の Windows NT または Windows 2000 のドメイン コントローラは利用できません。 次のエラーが発生しました: 現在、ログオン要求を処理できるログオン サーバーはありません。 信頼関係を結んだxxxxxxxxドメインとの接続エラー。
xxxxxxxxドメインコントローラのシャットダウン等では。
EventLog 6008 以前のシステム シャットダウン ( xxxx/xx/xx x:xx:xx) は予期されていませんでした。 障害でシステムダウン orz
Service Control Manager 7009 Dell OpenManage Server Agent サービスへの接続中にタイムアウト (30000 ミリ秒)になりました。 ディスク障害のため。
Service Control Manager 7026 次のブート開始ドライバまたはシステム開始ドライバを読み込むことができませんでした: dlttape-VRTS BackupExecのドライバをきちんと入れなかったため起動時にドライバエラーが出る。
とりあえず動いているので放置。
MRxSmb 8003 マスタ ブラウザは、自分がトランスポート NetBT_Tcpip_{3Fxxxx-xxxx-xxxx- のドメインのマスタ ブラウザであると認識している 別のコンピュータ ○○○○○ からサーバー アナウンスを受信しました。 マスタ ブラウザが停止しているか、またはブラウザの選択中です。 Windowsブラウジングの問題。
マスタブラウザになってしまったWindowsがシャットダウンされたためではないだろうか。しかしDCではないクライアントPCがブラウズマスターになると困る。
DCOM 10006 サーバー:{F9xxxxxx-xxxx-xxxx-xxxx-00xxxxxxx} をアクティブにしようとしたときに コンピュータ xxxxxxxx でエラー "エラー: 一般のアクセスが拒否されました "が発生しました。 BackupExecの動作による。




アライドスイッチのコマンド

CentreCOM 9424T/SP

ログイン
  ユーザ manager
  パスワード friend
  パスワードの変更
    set password manager
       旧パスワード
       新パスワード(1〜16文字の英数字)
       確認をもう一度


  設定ファイルを作成、保存
    create config=ファイル名
    確認
      show file

  設定を保存
    save configuration

  起動時設定ファイルを指定
    set config=ファイル名 または none
    確認
      show config

  終了
    logoff
    logout
    quit
    ちなみにqだけでも終了してしまった orz

IPアドレス設定
    set ip interface=eth0 ipaddress=ipアドレス mask=マスク
    確認
      show ip interface

    ただしDHCPクライアントが有効だと設定できない。
    DHCPでのIPアドレス設定
      enable ip remoteassign
      確認
        show ip interface

    DHCPクライアントの設定確認
      show dhcpbootp

  telnetを無効化
    disable telnet
    確認
      show telnet

  システム状況
    show system

再起動(コールドスタート)
    restart reboot
    restart switch config=ファイル名 またはnone

  ご購入時の状態に戻す
    set config=none
    restart reboot

ファイル操作
  ファイルの表示
    show file

  boot.cfgの作成
    save configuration
    確認
      show file
      show file=*.cfg

  ファイルの内容表示
    show file=ファイル名

  ファイルの削除
    delete file=ファイル名

  ファイルのコピー
    copy 元のファイル名 先のファイル名

  ファイル名の変更
    rename 前のファイル名 後のファイル名

  TFTP
  ダウンロード
    load method=tftp dest=保存先ファイル名 file=ダウンロード対象ファイル名 server=サーバアドレス
    DISTFILEにsts63.imgあるいはAPPBLOCKを指定するとファームウェアのバージョンアップ。

  アップロード
    upload method=tftp dest=保存先ファイル名 file=アップロード対象ファイル名 server=サーバアドレス

  Xmodemでダウンロード、アップロード
    load method=xmodem dest=保存先ファイル名
    upload method=xmodem file=アップロード対象ファイル名

  システム内でファームウェアファイルを転送
    アプリケーションブロックからフラッシュメモリへ
      upload method=local file=appblock dest=ファイル名
    アプリケーションブロックへ
      load method=local dest=appblock file=ファイル名

SNMPで管理
  SNMPエージェントを有効に
    enable snmp
    enable snmp authenticate_trap

  SNMPコミュニティーを作成
    create snmp community=viewers access=read traphost=トラップ送信先
    manager=オペレーションを許可するホスト

    確認
    show snmp community=コミュニティ名

  システム名の設定
    set system name=システム名

VLANの設定
  VLANの作成
    create vlan=VLAN名 vid=VLANのID

  VLANにポートを割り当てる
    add vlan=VLAN名 port=1-11(例)

  ポート24をタグ付きポートとして2つのVLANに所属
    add vlan=ひとつめのVLAN port=24 frame=tagged
    add vlan=ふたつめのVLAN port=24 frame=tagged

  マネージメントVLANの指定(デフォはDefault_VLAN)
    リモートからログインするポートのVLANをマネージメントVLANに指定しないと
    リモートログインできなくなる
    set switch managementvlan=VLAN名



ルータ編

  基本的なコマンド

  タイムアウト時間の変更

  RIPの再注入

  セカンダリの設定

  HSRPの設定

  ルータのARPキャッシュがおかしかった

  IPアドレスが重複したときの探索

  忘れてはいけない


  基本的なコマンド

    現在のポートの状態

      sh interfaces
      sh interfaces fa0/3

    どのように設定してあるか

      sh running-config

    時間

      sh clock

    ログ

      sh logging

    ARP

      sh arp

    システム情報

      sh ver

    VLAN

      sh vlan

    GREP

      include


    実践

    タイムアウト時間の変更

      conf terminal
      line vty 0 4
      exec-timeout 3600
      ctl + g  ctl + z

    RIPの再注入

      conf terminal
      router ospf 1
      no redistribute rip metric メトリック値 subnets
      redistribute rip metric メトリック値 subnets
      ctl + g  ctl + z

    セカンダリの設定

      conf terminal
      interface e0
      ip address 10.55.2.248 255.255.255.0 secondary
      standby ip 10.55.2.241 secondary
      wr

    HSRPの設定

      変更されないアドレスでログイン
      HSRPの設定
      conf terminal
      interface e0
      standby preempt
      standby priority 90
      standby timers 2 7
      IPアドレスの変更
      no ip address xxx.xxx.xxx.xxx 255.255.255.0
      ip address ooo.ooo.ooo.ooo 255.255.255.0
      standby ip zzz.zzz.zzz.zzz
      sh running-config
      セカンダリがある場合はセカンダリのIPアドレスも変更する

    ルータのARPキャッシュがおかしかった

      7FフロアHUBのDで通信異常
      センタースイッチのログでDuplicate address発生
      しばらくそのまま使える。
      OVでアラーム、CSCから7FフロアHUB へのPINGがNG
      フロアHUB配下の端末の通信は正常。
      6Fから7FフロアHUBへのPINGがNG
      センタースイッチ1から7FフロアHUBへのPINGはOK
      7FフロアHUBのCを踏み台にしてDへのtelnetはOK
      DからデフォルトゲートウェイにPINGがOK
      これでセンタースイッチのARPが正常にもどりアラーム消える。

      異常の時にセンタースイッチ1と2のARPを比較してみるべき。

    IPアドレスが重複したときの探索

      該当IPアドレスのMACを調べる
        sh arp

      grepしたいときは
        sh arp|include 何々

      MACのテーブルを見る
        sh mac-address-table

        sh mac だけで表示するものもある

      これで目的のMACアドレスがどのポートにあるかがわかる
      ただしFA0/12 とかFA0/24等は端のポートであることからカスケードの恐れがある。
      その場合はカスケード先のスイッチを調査する必要もある。

    忘れてはいけない

      wr

      停電の後におかしくなった・・・という時はconfigも確認しよう。
      ライトメモリーを忘れていた!なんてことのないよう。




バッチ編

dosコマンド編

共有

net share 共有名="d:\users\フォルダ名"




リソースキット編

イベントログの収集

dumpeventlog -k system -e 1 -d 20041101 20041124 -f シスログ.txt -s サーバ名
dumpeventlog -k application -e 1 -d 20041101 20041124 -f アプリログ.txt -s サーバ名
dumpeventlog -k security -d 20041101 20041124 -f セキュログ.txt -s サーバ名


ユーザを追加

addusers /c /p:l ファイル名
  ファイル名の例
   [user]
   ユーザ名,表示名,パスワード,コメント


ユーザーにグループを追加

cusrmgr -u ユーザ名 -agg グループ名


ユーザーからグループを削除

cusrmgr -u ユーザ名 -dgg グループ名


ユーザの表示名を変更

cusrmgr -u ユーザ名 -f 表示名


フォルダにアクセス権を追加

xcacls d:\users\フォルダ名 /G ユーザ名:F administrators:F /Y


ユーザを削除(ただし休止)

cusrmgr -u ユーザ名 +s AccountDisabled



sed編

区切り文字の変換

sed  s/:/,/g 変換前.txt > tmp.txt


スクリプトファイルで一覧を整形

sed -f script.txt ex1.txt > kekka.txt
  script.txtの例
  s/ユーザー//g
  s/;//g
  s/\t/,/g
  s/,,/,/g



grep編

ex2.txtに書かれたリストでgrep

grep -f ex2.txt ex1.txt > kekka.txt



uniq編

sortしてuniqで件数の多い物順に表示

ex1.txt|uniq -c|sort /r



perl編

ファイルから変数に1レコードずつ読み込む

open TBL, "<ex1.txt";
while($a = <TBL>){
@b = split(/,/, $a);
print "@b[2]\n";
}
close TBL;


テーブルに一致するものを発見

open TXT, "< ex1.txt";
while($x = <TXT>){
 @y = split(/,/, $x);
 print "$y[0]\n";
 open TBL, "< ex2.txt";
 while($a = <TBL>){
  @b = split(/,/, $a);
  # print "$b[1]\n";
  if ($x =~ /$b[0]/){
   print "発見(^^\n";
  }
  else{
   # print "残念\n";
  }
 }
 close TBL;
}
close TXT;


テーブルに一致するものを変換

open TXT, "< ex1.txt";
while($x = <TXT>){
 @y = split(/,/, $x);
 open TBL, "< ex2.txt";
 while($a = <TBL>){
  @b = split(/,/, $a);
  if($x =~ s/$b[0]/$b[1]/){
   print "$x\n";
  }
  else{
  }
 }
 close TBL;
}
close TXT;


ex1.txtに任意の文字を挿入してkekka.txtに出力

open TBL, "< ex1.txt";
open OUT, "> kekka.txt";
@x = (first,middle,end);
while($a = <TBL>){
 chop($a);
 @b = split(/,/, $a);
 print OUT "$x[0] $b[0] $b[1] $x[1] $b[2] $b[4] $x[2]\n";
}
close TBL;
close OUT;


ex1.txtの前に入力文字を挿入してkekka.txtに出力

$a = <STDIN>;
chomp($a);
open (IN, "< ex1.txt" ||die "ファイル開けん:$!\n");
open (OUT, "> kekka.txt" ||die "ファイル開けん:$!\n");
while (<IN>){
 print OUT "$a $_";
 print "$a$_\n";
}
close(OUT);
close(IN);


いらない部分を切り取り

open TBL, "< ex1.txt";
open OUT, "> kekka.txt";
while($a = <TBL>){
 chomp($a);
 @b = split(/,/, $a);
 print OUT "$b[0] $b[1] $b[2] $b[4]\n";
 print "$b[0] $b[1] $b[2] $b[4]\n";
}
close TBL;
close OUT;


日付を得る

@youbi = ('日', '月', '火', '水', '木', '金', '土');
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$year += 1900;
$mon += 1;
print "$year年$mon月$mday日($youbi[$wday]) $hour時$min分$sec秒\n";

($mday,$mon,$year) = (localtime(time))[3..5];
$year += 1900;
# $mon += 1;






トップページヘもどる