<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    搬磚頭

    Knocking on Heaven's Door
    posts - 34, comments - 6, trackbacks - 0, articles - 0

     

    Oracle的數據庫對象分為五種:表,視圖,序列,索引和同義詞。

         視圖是基于一個表或多個表或視圖的邏輯表,本身不包含數據,通過它可以對表里面的數據進行查詢和修改。視圖基于的表稱為基表。

         視圖是存儲在數據字典里的一條select語句。 通過創建視圖可以提取數據的邏輯上的集合或組合。

    視圖的優點:

           1.對數據庫的訪問,因為視圖可以有選擇性的選取數據庫里的一部分。

           2.用戶通過簡單的查詢可以從復雜查詢中得到結果。

           3.維護數據的獨立性,試圖可從多個表檢索數據。

           4.對于相同的數據可產生不同的視圖。

    視圖分為簡單視圖和復雜視圖:

           簡單視圖只從單表里獲取數據
           復雜視圖從多表

           簡單視圖不包含函數和數據組
           復雜視圖包含

          簡單視圖可以實現DML操作
          復雜視圖不可以.

    視圖的創建:

        CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name

      [(alias[, alias]...)]

       AS subquery
       [WITH CHECK OPTION [CONSTRAINT constraint]]
       [WITH READ ONLY]
    FORCE               :不管基表是否存在ORACLE都會自動創建該視圖;
    NOFORCE          :只有基表都存在ORACLE才會創建該視圖:
    alias                    :為視圖產生的列定義的別名;
    subquery            :一條完整的SELECT語句,可以在該語句中定義別名;
    WITH CHECK   OPTION :
                                 插入或修改的數據行必須滿足視圖定義的約束;
    WITH READ ONLY :
                                該視圖上不能進行任何DML操作。
    例如:
            CREATE   OR   REPLACE   VIEW   dept_sum_vw
                    (name,minsal,maxsal,avgsal)
            AS   SELECT d.dname,min(e.sal),max(e.sal),avg(e.sal)
            FROM     emp e,dept d
            WHERE   e.deptno=d.deptno
            GROUP   BY   d.dname;
    視圖的定義原則:
            1.視圖的查詢可以使用復雜的SELECT語法,包括連接/分組查詢和子查詢;
            2.在沒有WITH CHECK OPTION和 READ ONLY 的情況下,查詢中不能使用
               ORDER BY 子句;
            3.如果沒有為CHECK OPTION約束命名,系統會自動為之命名,形式為SYS_Cn;
            4.OR REPLACE選項可以不刪除原視圖便可更改其定義并重建,或重新授予對象
               權限。
    視圖的查詢:
               視圖創建成功后,可以從視圖中檢索數據,這點和從表中檢索數據一樣。
               還可以查詢視圖的全部信息和指定的數據行和列。
        如:
              檢索數據:
               SQL>SELECT * FROM   dept_sum_vw;
              查詢視圖定義:
              SELECT view_name,text   from user_views;
                 其中text顯示的內容為視圖定義的SELECT語句,可通過DESC USER_VIEWS
                 得到相關信息。
    修改視圖:
             通過OR REPLACE 重新創建同名視圖即可。
    視圖上的DML 操作:
             DML操作應遵循的原則:
             1.簡單視圖可以執行DML操作;
             2.在視圖包含GROUP 函數,GROUP BY子句,DISTINCT關鍵字時不能
                刪除數據行;
             3.在視圖不出現下列情況時可通過視圖修改基表數據或插入數據:
                 a.視圖中包含GROUP 函數,GROUP BY子句,DISTINCT關鍵字;
                 b.使用表達式定義的列;
                 c.ROWNUM偽列。
                 d.基表中未在視圖中選擇的其他列定義為非空且無默認值。
    視圖可用于保持數據庫的完整性,但作用有限。
    通過視圖執行引用完整性約束可在數據庫級執行約束。
    WITH CHECK OPTION 子句限定:
              通過視圖執行的INSERTS和UPDATES操作不能創建該視圖檢索不到的數據行,
              因為它會對插入或修改的數據行執行完整性約束和數據有效性檢查。
       例如:
                CREATE OR REPLACE VIEW   vw_emp20
                AS   SELECT *   FROM   emp
                WHERE   deptno=20
                WITH CHECK OPTION constraint   vw_emp20_ck;
               視圖 已建立。
                 查詢結果:
                SELECT empno,ename,job FROM vw_emp20;
               
               EMPNO                 ENAME                 JOB
    ---------------------            --------------           -------------
                   7369                  SMITH                 CLERK
                   7566                  JONES                MANAGER
                   7902                  FORD                 ANALYST
               修改:
                     UPDATE vw_emp20
                     SET         deptno=20
                     WHERE    empno=7902;
                將產生錯誤:
                    UPDATE vw_emp20
                                   *
                    ERROR 位于第一行:
                    ORA-01402:視圖WITH CHECK OPTION 違反WHERE 子句
    視圖的刪除:
                 DROP VIEW   VIEW_NAME語句刪除視圖。
                 刪除視圖的定義不影響基表中的數據。
                 只有視圖所有者和具備DROP VIEW權限的用戶可以刪除視圖。
                 視圖被刪除后,基于被刪除視圖的其他視圖或應用將無效。
    OR REPLACE     :若所創建的試圖已經存在,ORACLE自動重建該視圖;

    posted @ 2007-10-09 10:05 生活在別處 閱讀(709) | 評論 (0)編輯 收藏

     

    Ruby中常會用到正則表達式。正則表達式是用來表達字符串的模式(pattern)的。也可以這么理解:我們使用正則表達式來表示某種搜索規則,然后使用該正則表達式來完成字符串的搜索工作。舉個例子,假定有這樣的搜索規則:“字符串以’FOO’開始,以’R’結束”,那么就可以使用以下正則表達式來表示該規則。

    /^FOO.*R$/

    Ruby用//將正則表達式括起來。^表示開頭,$表示結尾,.*表示0個以上的任意字符。

    現在就講講正則表達式的規則的寫法。正則表達式中有很多上述的具有特別意義的字符。首先是下列字符。
    [ ]
    范圍描述符。[a-z]表示從a到z之間的任意一個。
    \w
    英文字母和數字。即[0-9 A-Z a-z]。
    \W
    非英文字母和數字
    \s
    空字符,即[\t\n\r\f]。
    \S
    非空字符。
    \d
    數字,即[0-9]。
    \D
    非數字。
    \b
    詞邊界字符(在范圍描述符外部時)
    \B
    非詞邊界字符
    \b
    退格符(0x08)(在范圍描述符內部時)
    *
    前面元素出現0次以上
    +
    前面元素出現1次以上
    {m,n}
    前面元素最少出現m次,最多出現n次
    ?
    前面元素出現0次或1次
    |
    選擇
    ( )
    群組
    其他字符
    該字符本身

    例如,“^f[a-z]+”表示“第一個字符是f,后面是若干個從a到z之間的字符”,可以是“fobar”或“fool”等等。這種表達法就是正則表達式(regular expression)。在搜索字符串時正則表達式非常有用,因此在UNIX的世界里,正則表達式得到了廣泛的應用。grep程序就是個代表。許多人是不是經常會用到它呢?

    為了學會使用正則表達式,先來試試下面這個程序。請用文件名regx.rb將程序保存下來以后再運行它。

    st = "\033[7m"
    en = "\033[m"
     
    while TRUE
       print "str> "
       STDOUT.flush
       str = gets
       break if not str
       str.chop!
       print "pat> "
       STDOUT.flush
       re = gets
       break if not re
       re.chop!
       str.gsub! /#{re}/, "#{st}\\&#{en}"
       print str, "\n"
    end
    print "\n"

    該程序會在第一次輸入的字符串中按照第二次輸入的正則表達式的要求尋找合適的字符串,并將其以反色顯示出來。下面是運行結果。

    str> foobar
    pat> ^fo+
    foobar
    ^^^

    # 實際上foo的部分被反色顯示了。

    再試一試。

    str> abc012dbcd555
    pat> \\d
    abc012dbcd555
       ~~~    ~~~

    從上例可以看出,該程序可以檢測出多處符合條件的字符串。

    str> foozboozer
    pat> f.*z
    foozboozer
    ~~~~~~~~

    在這個例子中,正則表達式“f.*z”并非只是對應到fooz,而是一直對應到foozbooz這里。這是因為,正則表達式總是在符合條件的結果中選擇較長的一個。

    正則表達式甚至可以寫出讓人一眼看不透的模式,這可能會像謎語一樣有趣。但若過分凝煉的話,以后就很難搞懂當初的想法了。

    str> Wed Feb  7 08:58:04 JST 1996
    pat> [0-9]+:[0-9]+(:[0-9]+)?
    Wed Feb  7 08:58:04 JST 1996
               ~~~~~~~~

    Ruby用’/’將正則表達式括起來。另外還有一些方法會自動將字符串變為正則表達式。

    % ruby -le 'print "abcdef" =~ /d/'
    3
    % ruby -le 'print "aaaaaa" =~ /d/'
    nil

    ‘=~’是使用正則表達式進行匹配的操作符,它返回匹配成功時的位置。

    到底哪些方法可以處理正則表達式呢?關于這個問題,請查閱參考手冊。 

    posted @ 2007-09-18 16:10 生活在別處 閱讀(1124) | 評論 (0)編輯 收藏

    定義:escape關鍵字經常用于使某些特殊字符,如通配符:'%','_'轉義為它們原

    來的字符的意義,被定義的轉義字符通常使用'\',但是也可以使用其他的符號。

    實例:

    SQL> select * from t11 where name like '%_%';

    NAME
    ----------
    aa_a
    aaa
    SQL> select * from t11 where name like '%\_%' escape '\';

    NAME
    ----------
    aa_a

    注意:如果是 '/' 作為檢索字符, 必須 用 '/' 作為轉義符, 正斜扛也一樣.
    select * from wan_test where psid like '%//%' escape '/'


    posted @ 2007-07-25 00:13 生活在別處 閱讀(3673) | 評論 (0)編輯 收藏

    通常情況下,我們使用SPOOL方法,將數據庫中的表導出為文本文件的時候會采用兩種方法,如下述:
    方法一:采用以下格式腳本 
    set colsep '' ------設置列分隔符
      set trimspool on
      set linesize 120
      set pagesize 2000
      set newpage 1
      set heading off
         set term off
      spool 路徑+文件名
      select * from tablename;
      spool off
    方法二:采用以下腳本
    set trimspool on
      set linesize 120
      set pagesize 2000
      set newpage 1
      set heading off
      set term off
      spool 路徑+文件名
      select col1||','||col2||','||col3||','||col4||'..' from tablename;
      spool off
    比較以上方法,即方法一采用設定分隔符然后由sqlplus自己使用設定的分隔符對字段進行分割,方法二將分隔符拼接在SELECT語句中,即手工控制輸出格式。
    在實踐中,我發現通過方法一導出來的數據具有很大的不確定性,這種方法導出來的數據再由sql ldr導入的時候出錯的可能性在95%以上,尤其對大批量的數據表,如100萬條記錄的表更是如此,而且導出的數據文件狂大。
    而方法二導出的數據文件格式很規整,數據文件的大小可能是方法一的1/4左右。經這種方法導出來的數據文件再由sqlldr導入時,出錯的可能性很小,基本都可以導入成功。
    因此,實踐中我建議大家使用方法二手工去控制spool文件的格式,這樣可以減小出錯的可能性,避免走很多彎路。
    本文原創,如有引用,請加鏈接,謝謝!

    原帖地址 

    posted @ 2007-07-25 00:01 生活在別處 閱讀(1618) | 評論 (0)編輯 收藏

    TFTP是用來下載遠程文件的最簡單網絡協議,它基于UDP協議而實現。嵌入式linux的tftp開發環境包括兩個方面:一是嵌入式linux宿主機的 tftp-server支持,二是嵌入式linux目標機的tftp-client支持。因為u-boot本身內置支持tftp-client,所以嵌入式目標機就不用配置了。下面就詳細介紹一下linux宿主機tftp-server的安裝配置。

    在FC6光盤的ISO鏡像中,有tftp-server的rpm安裝包。
    (1)安裝
    #mount -o loop <FC6光盤ISO鏡像.iso> /mnt/CD //掛載光盤
    #rpm -ivh tftp-0.42-3.1.i386.rpm //安裝tftp-client
    #rpm -ivh tftp-server-0.42-3.1.i386.rpm //安裝tftp-server
    #umount /mnt/CD //卸載光盤

    (2)修改文件
    在linux 下,不管使用的是哪一種super-server,inetd或者xinetd,默認情況下TFTP服務是禁用的,所以要修改文件來開啟服務。根據(1)的安裝方法,可以修改文件/etc/xinetd.d/tftp。主要是設置TFTP服務器的根目錄,開啟服務。修改后的文件如下:

    service tftp
    {
    socket_type = dgram
    protocol = udp
    wait = yes
    user = root
    server = /usr/sbin/in.tftpd
    server_args = -s /tftpboot
    disable = no
    per_source = 11
    cps = 100 2
    flags = IPv4
    }

    說明:修改項server_args= -s <path> -c,其中<path>處可以改為你的tftp-server的根目錄,參數-s指定chroot。

    (3)創建tftp根目錄,啟動tftp-server。
    #mkdir /tftpboot
    #chmod o+w /tftpboot
    #service xinetd restart
    這樣,tftp-server就啟動了。

    (4)配置防火墻
    TFTP (Trivial File Transfer Protocol),中譯簡單文件傳輸協議或小型文件傳輸協議. 大家一定記得在2003年8月12日全球爆發沖擊波(Worm.Blaster)病毒,這種病毒會監聽端口69,模擬出一個TFTP服務器,并啟動一個攻擊傳播線程,不斷地隨機生成攻擊地址,進行入侵。另外tftp被認為是一種不安全的協議而將其關閉,同時也是防火墻打擊的對象,這也是有道理的。tftp 在嵌入式linux還是有用武之地的。
    打開防火墻,允許tftp訪問網絡。
    [root@localhost /]# setup
    Firewall configuration--> Customize--other port 處:69:udp,保存就可以了。

    你可以登陸本機測試以下,命令如下:
    #tftp your-ip-address
    tftp>get <download file>
    tftp>put <upload file>
    tftp>q
    #
     

    ================整理====================

    ########################################################
    安裝過程中出現的問題及原因
    現象一:
        tftp> get test.log
        Transfer timed out.
    原因:
        tftpd服務沒有啟動


    現象二:
        tftp> get test.log
        Error code 2: Only absolute filenames allowed
    原因:
        在/etc/xinetd.d/tftpd中設置的server_args為/etc/default/tftpd-hpa
        cat /etc/default/tftpd-hpa
        #Defaults for tftpd-hpa
        RUN_DAEMON="no"
        OPTIONS="-s /home/tftpd -c -p -U 077 -u tftpd"
    ps:實際根本就不用/etc/default/tftpd-hpa文件,它應該是用在standalone模式下的


    現象三:
        tftp> put ex070416.log
        Error code 1: File not found
    原因:
        指定的文件不存在;或tftpd啟動參數中沒有指定-c選項,允許上傳文件

    ########################################################
    其它常用選項如下:
    -l        使用standalone模式運行,此模式下,將會忽略-t選項
    -a address:port    在standalone模式下服務所在的IP與端口,如果不指定,則在本機所有IP,/etc/service中指定的port上偵聽連接
    -c         允許在服務器上新建文件,否則只允許更新現有的文件。如果未指定-U或-p選項,則允許任何人上傳文件
    -s directory    服務器端默認的目錄,默認為/var/lib/tftpdboot
    -u username    tftpd服務以什么身份運行,默認是nobody,一般可以新建一個tftpd的賬號來運行
    -U umask    上傳的文件的掩碼,如果未指定-p則為000,如果指定了-p,則采用指定的umask
    -p        對于通過-u指定的用戶執行的動作,不做額外的權限檢查

    更多權限請見man tftpd。

    posted @ 2007-07-24 23:57 生活在別處 閱讀(10011) | 評論 (0)編輯 收藏

    TFTP (普通文件傳輸協議或一般文件傳輸協議) 大家一定記得在2003年8月12日全球爆發沖擊波(Worm.Blaster)病毒,這種病毒會監聽端口69,模擬出一個TFTP服務器,并啟動一個攻擊傳播線程,不斷地隨機生成攻擊地址,進行入侵。另外tftp被認為是一種不安全的協議而將其關閉,同時也是防火墻打擊的對象,這也是有道理的。不過 tftp還是有用武之地的,下面講的文件傳輸和備份router配置文件都時實際應用,它也只時一種手段而已。

    一、用TFTP實現文件傳輸
    環境:服務器A :rhas11
    客戶機B: rhas101
    首先用rpm –qa | grep tftp看一下tftp有沒安裝,沒有的話安 裝一下。
    A:在服務器端設置
    #vi /etc/xinetd.d/tftp
    service tftp
    {
    disable = no
    socket_type = dgram
    protocol = udp
    wait = yes
    user = root
    server = /usr/sbin/in.tftpd
    server_args = -s /test
    per_source = 11
    cps = 100 2
    flags = IPv4
    }

    或用chkconfig tftp on 也可以打開xinetd代理的tftp服

    #mkdir /test
    #service xinetd restart 從啟xinetd服務,因為TFTP服務受控與xinetd, xinetd是管服務的服務,它是不開端口的。
    驗證一下TFTP是否起來了:
    [root@rhas11 tftp]# netstat -nlp
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
    tcp 0 0 0.0.0.0:32768 0.0.0.0:* LISTEN 3122/rpc.statd
    tcp 0 0 127.0.0.1:32781 0.0.0.0:* LISTEN 4035/xinetd
    tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 3103/portmap
    tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3324/httpd
    tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3255/sshd
    tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 3213/cupsd
    tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3295/sendmail: acce
    tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 3415/0
    tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 3324/httpd
    udp 0 0 0.0.0.0:32768 0.0.0.0:* 3122/rpc.statd
    udp 0 0 0.0.0.0:69 0.0.0.0:* 4035/xinetd
    udp 0 0 0.0.0.0:69 0.0.0.0:* 4012/in.tftpd
    udp 0 0 0.0.0.0:111 0.0.0.0:* 3103/portmap
    udp 0 0 0.0.0.0:754 0.0.0.0:* 3122/rpc.statd
    udp 0 0 0.0.0.0:631 0.0.0.0:* 3213/cupsd

    A:服務器端 新建一文件file
    #cd /test
    [root@rhas11 test]# ls -l
    總用量 4
    -rw-r--r-- 1 root root 19 5月 15 18:26 file

    B客戶端:

    下載:
    [root@rhas101 tmp]# tftp 172.31.0.11
    tftp> get 1
    Received 72 bytes in 0.0 seconds
    tftp>

    上傳當前目錄下文件”aaa”
    [root@rhas101 client]# ls -l
    總用量 4
    -rw-r--r-- 1 root root 15 5月 20 21:49 aaa

    [root@rhas101 client]# tftp 172.31.0.11
    tftp> put aaa
    Error code 1: File not found
    tftp>

    奇怪當前目錄卻是有aaa文件???讓我想一下
    哦,原來服務器/test目錄下沒有文件aaa,那就touch一個吧
    [root@rhas11 test]# touch aaa
    [root@rhas11 test]# ls -l
    總用量 4
    -rw-r--r-- 1 root root 0 5月 15 18:46 aaa
    -rw-r--r-- 1 root root 19 5月 15 18:26 file

    好了再試一試
    [root@rhas101 client]# tftp 172.31.0.11
    tftp> put aaa
    Error code 1: File not found
    tftp> put aaa
    Error code 2: Access denied
    tftp>
    細心的讀者一定想到這是權限問題
    再到服務器上設置
    (===========================================================================
    小插曲:#chown -R nobody.nobody /test
    #vi /etc/xinetd.d/tftp
    service tftp
    {
    disable = no
    socket_type = dgram
    protocol = udp
    wait = yes
    user = nobody
    server = /usr/sbin/in.tftpd
    server_args = -u nobody -s /test
    per_source = 11
    cps = 100 2
    flags = IPv4
    }
    chmod 777 -R /test
    ===========================================================================
    )

    #service xinetd restart

    )

    [root@rhas11 test]# chmod 007 aaa 其實只要有可寫的權限就行了
    [root@rhas11 test]# ls -l
    總用量 4
    -------rwx 1 root root 0 5月 15 18:46 aaa
    -rw-r--r-- 1 root root 19 5月 15 18:26 file

    [root@rhas101 client]# tftp 172.31.0.11
    tftp> put aaa
    Error code 1: File not found
    tftp> put aaa
    Error code 2: Access denied
    tftp> put aaa
    Sent 16 bytes in 0.0 seconds
    tftp>

    二、 特殊應用:上傳和下載路由器(或交換機)配置文件

    配使用Linux的tftp功能配置cisco route
    在局域網環境中,如果有Cisco 路由器和Linux服務器。也許你需要利用Linux的
    TFTP服務去下載Cisco router配置文件 startup-config,在服務器上編輯后再上載
    到路由器,在實現中有一些特別注意的地方。
    所用軟、硬件:Redhat Linux AS 3.0 ,Cisco 2611 路由器

    BEIJING#copy run tftp
    Address or name of remote host []? 172.31.0.11
    Destination filename [beijing-confg]? beijing-route
    !!
    1968 bytes copied in 0.581 secs (3387 bytes/sec)

    別忘了在tftp server 上創建beijing-route權限為777
    BEIJING#copy tftp flash
    Address or name of remote host []? 172.31.0.11
    Source filename []? beijing-route
    Destination filename [beijing-route]?
    Accessing tftp://172.31.0.11/beijing-route...
    Erase flash: before copying? [confirm]
    Erasing the flash filesystem will remove all files! Continue? [confirm]
    Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erased
    Erase of flash: complete
    Loading beijing-route from 172.31.0.11 (via FastEthernet0/0): !
    [OK - 1968 bytes]

    Verifying checksum... OK (0x5248)
    1968 bytes copied in 0.285 secs (6905 bytes/sec)
    BEIJING#  

    用tftp傳輸大文件時的帶寬顯示情寬

    posted @ 2007-07-24 23:46 生活在別處 閱讀(388) | 評論 (0)編輯 收藏

     1、pwd  查看自己當前所在位置

    2、cat  列出、合并、創建文件

    cat test.txt  (列出test.txt)
    cat test1.txt test2.txt > test3.txt (1、2合并生成3)
    cat test1.txt  >> test2.txt  (1合并到2中)
    cat > myfile.txt  (創建myfile.txt)
    3、mv file1 file2 (將file1改名為file2,如果file2已經存在,為避免改名時覆蓋file2,加上-b參數會生成file2的備份,備份有個波浪號后綴)

    4、cp  拷貝命令

    cp file1 file2 覆蓋掉file2的內容
    cp -i file1 file2  會出現提示信息
    cp -bi file1 file2 會備份file2
    cp -r tempdir1 tempdir2 把子目錄tempdir1及其中文件拷貝到tempdir2
    cp -p tempdir2/tempdir1/temp1file1 tempdir3 把文件連同子目錄結構一起拷貝到tempdir3
    5、ln  建立硬鏈接和符號鏈接

    ln file1 file2 (硬鏈接,file2和file1完全相同,修改其中任何一個都會影響另外一個,刪除了file1后,file2仍存在)
    ln -s file1 file2  (符號鏈接,file2只是一個指向file1的假名,如果刪除了file2,不影響file1,如果刪除了file1,file2就沒用了)
    ln -s /usr/local/games play  (建立一個子目錄的硬鏈接必須用符號鏈接,建立完符號鏈接后,就不用cd /usr/local/games了,只要用cd play)
    6、chowd 改變文件權限

    chmod  600 file1
    chmod ugo-wx file(擁有者-組-其他用戶直接增減權限)
    7、chown 改變文件所有權

    chown :users file1(把所有權分配給users用戶組)
    chown lucy:users file1(把存取權限分配給lucy用戶)
    8、groups 用戶名  (查看用戶名屬于哪個組)

    9、groupadd 組名  (創建新組)

    10、usermod -G/-g 組名 用戶名(把一個用戶加入一個組/把一個用戶改為屬于另一個組)

    11、userdel 用戶名/groupdel 組名   (刪除用戶/刪除組)

    12、scp root@202.198.31.66:/usr/local/file1 /home/  (遠程拷貝)

    13、history 3 (查看歷史命令列表,此命令是查看剛才用過的3個命令)

    14、find / -name http.conf -print (從根目錄開始查找文件并列出屬性)

    15、grep -c word /file1 (grep查找文件內容,此命令找出file1中word串出現次數)

    16、修改主機名  vi /etc/sysconfig/network,修改HOSTNAME一行為"HOSTNAME=主機名",然后運行命令" hostname 主機名"。一般還要修改/etc/hosts文件中的主機名。

    17、修改IP地址和修改網關(gateway選項)
    vi /etc/sysconfig/network-scripts/ifcfg-eth0
     
    18、查看機器域名(host IP)
    host 202.198.31.62
     
    19、查看CPU
    dmesg|grep CPU
     
    20、查看機器配置
    dmesg|grep hd

    posted @ 2007-06-26 09:51 生活在別處 閱讀(488) | 評論 (0)編輯 收藏

    編輯
    作用域
    功能
    快捷鍵
    全局
    查找并替換
    Ctrl+F
    文本編輯器
    查找上一個
    Ctrl+Shift+K
    文本編輯器
    查找下一個
    Ctrl+K
    全局
    撤銷
    Ctrl+Z
    全局
    復制
    Ctrl+C
    全局
    恢復上一個選擇
    Alt+Shift+↓
    全局
    剪切
    Ctrl+X
    全局
    快速修正
    Ctrl1+1
    全局
    內容輔助
    Alt+/
    全局
    全部選中
    Ctrl+A
    全局
    刪除
    Delete
    全局
    上下文信息
    Alt+?
    Alt+Shift+?
    Ctrl+Shift+Space
    Java編輯器
    顯示工具提示描述
    F2
    Java編輯器
    選擇封裝元素
    Alt+Shift+↑
    Java編輯器
    選擇上一個元素
    Alt+Shift+←
    Java編輯器
    選擇下一個元素
    Alt+Shift+→
    文本編輯器
    增量查找
    Ctrl+J
    文本編輯器
    增量逆向查找
    Ctrl+Shift+J
    全局
    粘貼
    Ctrl+V
    全局
    重做
    Ctrl+Y
    ?
    查看
    作用域
    功能
    快捷鍵
    全局
    放大
    Ctrl+=
    全局
    縮小
    Ctrl+-
    ?
    窗口
    作用域
    功能
    快捷鍵
    全局
    激活編輯器
    F12
    全局
    切換編輯器
    Ctrl+Shift+W
    全局
    上一個編輯器
    Ctrl+Shift+F6
    全局
    上一個視圖
    Ctrl+Shift+F7
    全局
    上一個透視圖
    Ctrl+Shift+F8
    全局
    下一個編輯器
    Ctrl+F6
    全局
    下一個視圖
    Ctrl+F7
    全局
    下一個透視圖
    Ctrl+F8
    文本編輯器
    顯示標尺上下文菜單
    Ctrl+W
    全局
    顯示視圖菜單
    Ctrl+F10
    全局
    顯示系統菜單
    Alt+-
    ?
    導航
    作用域
    功能
    快捷鍵
    Java編輯器
    打開結構
    Ctrl+F3
    全局
    打開類型
    Ctrl+Shift+T
    全局
    打開類型層次結構
    F4
    全局
    打開聲明
    F3
    全局
    打開外部javadoc
    Shift+F2
    全局
    打開資源
    Ctrl+Shift+R
    全局
    后退歷史記錄
    Alt+←
    全局
    前進歷史記錄
    Alt+→
    全局
    上一個
    Ctrl+,
    全局
    下一個
    Ctrl+.
    Java編輯器
    顯示大綱
    Ctrl+O
    全局
    在層次結構中打開類型
    Ctrl+Shift+H
    全局
    轉至匹配的括號
    Ctrl+Shift+P
    全局
    轉至上一個編輯位置
    Ctrl+Q
    Java編輯器
    轉至上一個成員
    Ctrl+Shift+↑
    Java編輯器
    轉至下一個成員
    Ctrl+Shift+↓
    文本編輯器
    轉至行
    Ctrl+L
    ?
    搜索
    作用域
    功能
    快捷鍵
    全局
    出現在文件中
    Ctrl+Shift+U
    全局
    打開搜索對話框
    Ctrl+H
    全局
    工作區中的聲明
    Ctrl+G
    全局
    工作區中的引用
    Ctrl+Shift+G
    ?
    文本編輯
    作用域
    功能
    快捷鍵
    文本編輯器
    改寫切換
    Insert
    文本編輯器
    上滾行
    Ctrl+↑
    文本編輯器
    下滾行
    Ctrl+↓
    ?
    文件
    作用域
    功能
    快捷鍵
    全局
    保存
    Ctrl+X
    Ctrl+S
    全局
    打印
    Ctrl+P
    全局
    關閉
    Ctrl+F4
    全局
    全部保存
    Ctrl+Shift+S
    全局
    全部關閉
    Ctrl+Shift+F4
    全局
    屬性
    Alt+Enter
    全局
    新建
    Ctrl+N
    ?
    項目
    作用域
    功能
    快捷鍵
    全局
    全部構建
    Ctrl+B
    ?
    源代碼
    作用域
    功能
    快捷鍵
    Java編輯器
    格式化
    Ctrl+Shift+F
    Java編輯器
    取消注釋
    Ctrl+\
    Java編輯器
    注釋
    Ctrl+/
    Java編輯器
    添加導入
    Ctrl+Shift+M
    Java編輯器
    組織導入
    Ctrl+Shift+O
    Java編輯器
    使用try/catch塊來包圍
    未設置,太常用了,所以在這里列出,建議自己設置。
    也可以使用Ctrl+1自動修正。
    ?
    運行
    作用域
    功能
    快捷鍵
    全局
    單步返回
    F7
    全局
    單步跳過
    F6
    全局
    單步跳入
    F5
    全局
    單步跳入選擇
    Ctrl+F5
    全局
    調試上次啟動
    F11
    全局
    繼續
    F8
    全局
    使用過濾器單步執行
    Shift+F5
    全局
    添加/去除斷點
    Ctrl+Shift+B
    全局
    顯示
    Ctrl+D
    全局
    運行上次啟動
    Ctrl+F11
    全局
    運行至行
    Ctrl+R
    全局
    執行
    Ctrl+U
    ?
    重構
    作用域
    功能
    快捷鍵
    全局
    撤銷重構
    Alt+Shift+Z
    全局
    抽取方法
    Alt+Shift+M
    全局
    抽取局部變量
    Alt+Shift+L
    全局
    內聯
    Alt+Shift+I
    全局
    移動
    Alt+Shift+V
    全局
    重命名
    Alt+Shift+R
    全局
    重做
    Alt+Shift+Y

    posted @ 2007-03-21 10:56 生活在別處 閱讀(257) | 評論 (0)編輯 收藏

    在linux下用rm刪除大量文件時會出現這個錯誤:

    ?? rm -rf 'wz-a1.2007-02*'
    rm?-rf?*?-bash:?/bin/rm:?參數列表過長

    經過google, 發現這個方法, 特記下來, 以防以后忘記

    find?.?-name?"wz-a1.2007-02*"?|?xargs?rm -rf 'wz-a1.2007-02*'



    原帖地址:http://www.tkk7.com/kelefa/archive/2007/02/02/97528.html

    posted @ 2007-03-20 11:00 生活在別處 閱讀(3594) | 評論 (2)編輯 收藏

         摘要: 原文出處:http://www.tkk7.com/chords/archive/2006/12/14/87591.html------------------------Five Habits of Highly Profitable Software Developersby Robert J. Miller08/24/2006原文地址:http://today.java.net/pub...  閱讀全文

    posted @ 2007-03-05 23:11 生活在別處 閱讀(231) | 評論 (0)編輯 收藏

    僅列出標題
    共4頁: 上一頁 1 2 3 4 下一頁 
    主站蜘蛛池模板: 亚洲第一精品福利| 国产成+人+综合+亚洲专| 7x7x7x免费在线观看| 亚洲免费二区三区| 免费国产在线观看| 无码日韩精品一区二区三区免费| 97久久国产亚洲精品超碰热| 一本色道久久综合亚洲精品高清| 59pao成国产成视频永久免费 | 亚洲日韩v无码中文字幕| 3d成人免费动漫在线观看| 综合偷自拍亚洲乱中文字幕| 亚洲av无码专区在线播放| 天天天欲色欲色WWW免费| 国精产品一区一区三区免费视频| 亚洲色偷偷综合亚洲AV伊人蜜桃 | 伊人久久综在合线亚洲2019| 免费国产综合视频在线看| 免费国产99久久久香蕉| 国产亚洲美女精品久久久久| 亚洲视频国产视频| 亚洲国产小视频精品久久久三级| 114级毛片免费观看| 一级毛片人与动免费观看| 激情内射亚洲一区二区三区爱妻 | 亚洲成aⅴ人片在线观| 亚洲一区二区三区国产精品| 毛片a级三毛片免费播放| 久久免费视频观看| 一级特黄色毛片免费看| 亚洲人成网站在线播放2019| 亚洲专区在线视频| 亚洲乳大丰满中文字幕| www.亚洲色图.com| 亚洲精品无码AV人在线播放 | 久久久亚洲欧洲日产国码aⅴ | 亚洲日韩aⅴ在线视频| 免费人成在线观看播放国产 | 杨幂最新免费特级毛片| 亚洲综合中文字幕无线码| 78成人精品电影在线播放日韩精品电影一区亚洲 |