欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      linux 命令總結(jié)(合集五篇)

      時(shí)間:2019-05-12 02:51:04下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《linux 命令總結(jié)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《linux 命令總結(jié)》。

      第一篇:linux 命令總結(jié)

      linux 命令總結(jié)

      1、永久更改ip ifconfig eth0 新ip 然后編輯/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip

      2、從Linux上遠(yuǎn)程顯示W(wǎng)indows桌面 安裝rdesktop包

      3、手動(dòng)添加默認(rèn)網(wǎng)關(guān) 以root用戶,執(zhí)行: route add default gw 網(wǎng)關(guān)的IP 想更改網(wǎng)關(guān)

      ?

      vi /etc/sysconfig/network-scripts/ifcfg-eth0 更改GATEWAY

      ?

      /etc/init.d/network restart

      4、查出22端口現(xiàn)在運(yùn)行什么程序 lsof-i :22

      5、查看本機(jī)的IP,gateway, dns IP: 以root用戶登錄,執(zhí)行ifconfig。其中eth0是第一塊網(wǎng)卡,lo是默認(rèn)的設(shè)備

      Gateway: 以root用戶登錄,執(zhí)行netstat-rn,以0.0.0.0開頭的一行的Gateway即為默認(rèn)網(wǎng)關(guān)

      也可以查看/etc/sysconfig/network文件,里面有指定的地址!

      DNS: more /etc/reslov.conf,內(nèi)容指定如下: nameserver 202.206.32.1 nameserver 202.206.32.1

      6、RH8.0命令行下輕松改變ping 的TTL值 #sysctl-w net.ipv4.ip_default_ttl=N(N=0~255),若N>255,則ttl=0

      7、RH8.0命令行下輕松改變系統(tǒng)配置默認(rèn)值

      編輯/etc/sysctl.conf, 例如,將 net.ipv4.ip_forward = 0 變?yōu)?net.ipv4.ip_forward = 1 重啟后生效,用sysctl-a查看可知

      8、mount局域網(wǎng)上其他windows機(jī)器共享出的目錄

      mount-t smbfs-o username=guest,password=guest //machine/path /mnt/cdrom

      9、允許|禁止root通過SSH登陸

      修改sshd_config:PermitRootLogin no|yes

      10、讓root直接telnet登陸

      編輯/etc/pam.d/login,去掉 auth required /lib/security/pam_securetty.so 這句話

      11、改變telnet的端口

      /etc/services這個(gè)文件里可修改想要的端口號(hào).重啟守護(hù)進(jìn)程

      12、終端模式有問題 export TERM=vt100

      13、模仿超級(jí)終端,LINUX里什么程序連接路由器和交換機(jī)(alstone)minicom

      14、ssh上來能不能不自動(dòng)斷線

      那是timetou的設(shè)置,修改TMOUT變量值

      15、用什么工具做入侵檢測(cè)

      snort

      16、Linux下檢測(cè)程序內(nèi)存泄漏的工具 cchecker或是efence庫(kù)都可以

      17、linux下如何監(jiān)視所有通過本機(jī)網(wǎng)卡的數(shù)據(jù) tcpdump iptraf

      18、為什么root執(zhí)行好多命令都說command not found 一定是telnet上來的,然后su成root的,修改su命令格式,應(yīng)該是su更換你登入時(shí)所用的shell 語(yǔ)法

      chsh [-s shell ] [-l ] [-u ] [-v ] [ username ] 描述

      chsh 用來更換你登入時(shí)所用的shell。在命令列沒指定shell。chsh 會(huì)提示一個(gè)給你。

      有效的shell

      chsh 可用指定路徑全名的方式來指定任何一個(gè)可執(zhí)行的檔案。然而,如果此 shell并沒紀(jì)錄在 /etc/shells 檔上,則chsh會(huì)提出警告訊息。選項(xiàng)

      -s,--shell 變更你的登入shell.-l,--list-shells

      列出紀(jì)錄在 /etc/shells 的shell。

      -u,--help 使用短訊。

      -v,--version 版本資訊

      相關(guān)文件

      login(1), passwd(5), shells(5)

      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 114 在linux下一些常用的關(guān)機(jī)/重啟命令

      有shutdown、halt、reboot、及init,它們都可以達(dá)到重啟系統(tǒng)的目的,但每個(gè)命令的內(nèi)部工作過程是不同的。

      1.shutdown shutdown命令安全地將系統(tǒng)關(guān)機(jī)。有些用戶會(huì)使用直接斷掉電源的方式來關(guān)閉linux,這是十分危險(xiǎn)的。因?yàn)閘inux與windows不同,其后臺(tái)運(yùn)行著許多進(jìn)程,所以強(qiáng)制關(guān)機(jī)可能會(huì)導(dǎo)致進(jìn)程的數(shù)據(jù)丟失﹐使系統(tǒng)處于不穩(wěn)定的狀態(tài)﹐甚至在有的系統(tǒng)中會(huì)損壞硬件設(shè)備。

      而在系統(tǒng)關(guān)機(jī)前使用shutdown命令﹐系統(tǒng)管理員會(huì)通知所有登錄的用戶系統(tǒng)將要關(guān)閉。并且login指令會(huì)被凍結(jié)﹐即新的用戶不能再登錄。直接關(guān)機(jī)或者延遲一定的時(shí)間才關(guān)機(jī)都是可能的﹐還可能重啟。這是由所有進(jìn)程〔process〕都會(huì)收到系統(tǒng)所送達(dá)的信號(hào)〔signal〕決定的。這讓像vi之類的程序有時(shí)間儲(chǔ)存目前正在編輯的文檔﹐而像處理郵件〔mail〕和新聞〔news〕的程序則可以正常地離開等等。shutdown執(zhí)行它的工作是送信號(hào)〔signal〕給init程序﹐要求它改變r(jià)unlevel。Runlevel 0被用來停機(jī)〔halt〕﹐runlevel 6是用來重新激活〔reboot〕系統(tǒng)﹐而runlevel 1則是被用來讓系統(tǒng)進(jìn)入管理工作可以進(jìn)行的狀態(tài)﹔這是預(yù)設(shè)的﹐假定沒有-h也沒有-r參數(shù)給shutdown。要想了解在停機(jī)〔halt〕或者重新開機(jī)〔reboot〕過程中做了哪些動(dòng)作﹐你可以在這個(gè)文件/etc/inittab里看到這些runlevels相關(guān)的資料。

      shutdown 參數(shù)說明:

      [-t] 在改變到其它runlevel之前﹐告訴init多久以后關(guān)機(jī)。

      [-r] 重啟計(jì)算器。

      [-k] 并不真正關(guān)機(jī)﹐只是送警告信號(hào)給每位登錄者〔login〕。

      [-h] 關(guān)機(jī)后關(guān)閉電源〔halt〕。

      [-n] 不用init﹐而是自己來關(guān)機(jī)。不鼓勵(lì)使用這個(gè)選項(xiàng)﹐而且該選項(xiàng)所產(chǎn)生的后果往往不總是你所預(yù)期得到的。

      [-c] cancel current process取消目前正在執(zhí)行的關(guān)機(jī)程序。所以這個(gè)選項(xiàng)當(dāng)然沒有時(shí)間參數(shù)﹐但是可以輸入一個(gè)用來解釋的訊息﹐而這信息將會(huì)送到每位使用者。

      [-f] 在重啟計(jì)算器〔reboot〕時(shí)忽略fsck。[-F] 在重啟計(jì)算器〔reboot〕時(shí)強(qiáng)迫fsck。

      [-time] 設(shè)定關(guān)機(jī)〔shutdown〕前的時(shí)間。

      2.halt----最簡(jiǎn)單的關(guān)機(jī)命令

      其實(shí)halt就是調(diào)用shutdown-h。halt執(zhí)行時(shí)﹐殺死應(yīng)用進(jìn)程﹐執(zhí)行sync系統(tǒng)調(diào)用﹐文件系統(tǒng)寫操作完成后就會(huì)停止內(nèi)核。

      參數(shù)說明:

      [-n] 防止sync系統(tǒng)調(diào)用﹐它用在用fsck修補(bǔ)根分區(qū)之后﹐以阻止內(nèi)核用老版本的超級(jí)塊〔superblock〕覆蓋修補(bǔ)過的超級(jí)塊。

      [-w] 并不是真正的重啟或關(guān)機(jī)﹐只是寫wtmp〔/var/log/wtmp〕紀(jì)錄。

      [-d] 不寫wtmp紀(jì)錄〔已包含在選項(xiàng)[-n]中〕。

      [-f] 沒有調(diào)用shutdown而強(qiáng)制關(guān)機(jī)或重啟。

      [-i] 關(guān)機(jī)〔或重啟〕前﹐關(guān)掉所有的網(wǎng)絡(luò)接口。

      [-p] 該選項(xiàng)為缺省選項(xiàng)。就是關(guān)機(jī)時(shí)調(diào)用poweroff。

      3.reboot reboot的工作過程差不多跟halt一樣﹐不過它是引發(fā)主機(jī)重啟﹐而halt是關(guān)機(jī)。它的參數(shù)與halt相差不多。

      4.init init是所有進(jìn)程的祖先﹐它的進(jìn)程號(hào)始終為1﹐所以發(fā)送TERM信號(hào)給init會(huì)終止所有的用戶進(jìn)程﹑守護(hù)進(jìn)程等。shutdown 就是使用這種機(jī)制。init定義了8個(gè)運(yùn)行級(jí)別(runlevel),init 0為關(guān)機(jī)﹐init 1為重啟。關(guān)于init可以長(zhǎng)篇大論﹐這里就不再敘述。另外還有telinit命令可以改變init的運(yùn)行級(jí)別﹐比如﹐telinit-iS可使系統(tǒng)進(jìn)入單用戶模式﹐并且得不到使用shutdown時(shí)的信息和等待時(shí)間。

      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 115 Linux服務(wù)器的一些基本應(yīng)用

      現(xiàn)就以如下網(wǎng)絡(luò)架構(gòu)為例,來說一下linux服務(wù)器的配置。在正式配置之前先說一下這個(gè)服務(wù)器所要實(shí)現(xiàn)的功能: 1.數(shù)據(jù)共享 2.打印共享 3.模擬NT域 4.ADSL共享 5.內(nèi)部DNS服務(wù) 6.DHCP服務(wù) 7.FTP服務(wù) 8.004km.cn/distrib/sourc...pd-1.2.5.tar.gz 2]安裝: tar zxvf proftpd-1.2.5.tar.gz cd proftpd-1.2.5./configure –prefix=/usr/local/proftpd //指定安裝在/usr/local/proftpd目錄下 make make install cp contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd chmod 700 /etc/rc.d/init.d/proftpd chkconfig –level 3 proftpd on //設(shè)置為系統(tǒng)自啟動(dòng)服務(wù)

      cp /usr/local/proftpd/sbin/proftpd /usr/sbin //將proftpd拷至/usr/sbin目錄下,讓系

      統(tǒng)能自動(dòng)搜索到,也免得再去加一個(gè)搜索路徑 3]配置/usr/local/proftpd/etc/proftpd.conf文件: vi /usr/local/proftpd.conf ServerName “Xchen FTP server” //服務(wù)器登錄提示 ServerType standalone DefaultServer on Port 21 Umask 022 MaxInstances 30 User nobody Group nobody //原來為nogroup,請(qǐng)改成nobody RequireValidShell off //手動(dòng)添加此名,重要

      //限定test組用戶只能訪問自己的home目錄,而不能向上瀏覽 DefaultRoot ~ test //限定test組用戶只能訪問自己的/home/ftp目錄,不能向上瀏覽 DefaultRoot ~/ftp test //限定music組用戶只能訪問/home/music目錄,不能向上瀏覽 DefaultRoot /home/ftp music //除music組中bb用戶外都能訪問/home/music目錄,不能向上瀏覽 DefaultRoot /home/ftp music,!bb //上面組需要自己建立:groupadd test,gpasswd –a username test ServerIdent off //登錄時(shí)不顯示版本信息 AllowOverwrite on // /home/ftp為匿名用戶登錄目錄 User ftp Group ftp UserAlias anonymous ftp MaxClients 10 DisplayLogin welcome.msg DisplayFirstChdir.message DenyAll 4]啟動(dòng)服務(wù):/etc/rc.d/init.d/proftpd start 5]測(cè)試,在客戶端用FTP軟件或命令行FTP程序進(jìn)行訪問ftp.cx.com。6]proftpd還有很多高級(jí)應(yīng)用,請(qǐng)參考相關(guān)資料,這里就不多贅述。

      十、004km.cn提供的動(dòng)態(tài)服務(wù)的實(shí)現(xiàn)。

      1]登錄004km.cn網(wǎng)站,注冊(cè)一個(gè)用戶,并申請(qǐng)一個(gè)動(dòng)態(tài)域名xxxx.3322.org。2]下載linux客戶端軟件:

      http://004km.cn/dyndnspage/ez-i...-linux-i386.tgz 3]安裝軟件:

      tar zxvf ez-ipupdate-3.0.10-linux-i386.tgz mv ez-ipupdate-3.0.10-linux-i386 /usr/local/ezip 4]編輯/usr/local/ezip/qdns.conf文件:

      vi /usr/local/qdns.conf service-type=qdns user=username:password //用戶名及密碼,用冒號(hào)隔開 host=xxxxx.3322.org //你申請(qǐng)的域名 interface=ppp0 //接口為ppp0 max-interval=2073600 cache-file=/tmp/ez-ipupdate.cache 5]將當(dāng)前ip現(xiàn)新到我們申請(qǐng)的域名: cd /usr/local/ezip ez-ipupdate –c qdns.conf 系統(tǒng)會(huì)提示數(shù)據(jù)更新成功,好,我們來ping一下xxxx.3322.org,是ppp0的IP,再用http://xxx.3322.org試一下,成功!!。

      6]問題又來了,難道我們每次啟動(dòng)ADSL都要用手動(dòng)更新一次嗎,你可能會(huì)想到用crontab讓它每隔幾分鐘更新一次,不過為了ip更新而啟用crond服務(wù)似乎有點(diǎn)小題大做,我的方法,修改/usr/sbin/adsl-start腳本:

      vi /usr/sbin/adsl-start 找到倒數(shù)25行‖tty –s && $ECHO ― Connected!―,在其下增加一行: /usr/local/ezip/ez-ipupdate –c /usr/local/ezip/qdns.conf 存盤退出,我們讓ADSL拔號(hào)完成以后自動(dòng)更新!7]測(cè)試一下: adsl-start.Connected!ez-ipupdate Version 3.0.10 Copyright(C)1999-2000 Angus Mackay.connected to members.3322.org(202.X.X.X)on port 80.request successful OK,數(shù)據(jù)更新成功。

      好,現(xiàn)在你隨時(shí)隨地都可以用xxxx.3322.org訪問你的服務(wù)了,不錯(cuò)吧。

      十二、openssh的設(shè)置

      如果你在家里或者其它地方,怎樣控制你的服務(wù)器,你可能會(huì)想到用telnet,本來是可以的,但是由于telnet用的是明碼傳輸,容易給那些不懷好意者可乘之機(jī),所以我們用openssh來代替telnet。

      1]卸載原來的2.9x版,2.9x版有bug,不安全: rpm –e openssh 2]最新軟件包下載:

      ftp://ftp.openbsd.org/pub/OpenBSD/O...sh-3.4p1.tar.gz 3]安裝軟件:

      tar zxvf openssh-3.4p1.tar.gz cd openssh-3.41./configure--prefix=/usr/local/ssh--sysconfdir=/etc/ssh--with-tcp-wrappers--with-ipv4-default--with-md5-passwords make

      make install

      注:安裝完成以后,會(huì)自動(dòng)生成主機(jī)密鑰,還會(huì)提示需要sshd用戶帳號(hào),可用useradd加一個(gè)sshd用戶。

      install /contrib/redhat/sshd.pam /etc/pam.d/sshd cp contrib/redhat/sshd.init /etc/rc.d/init.d/sshd chkconfig--level 3 sshd on ;配置成系統(tǒng)服務(wù) 4]配置openssh之/etc/ssh/ssh_config文件 vi /etc/ssh/ssh_config Host * ForwardAgent no ForwardX11 no RhostsAuthentication no RhostsRSAAuthentication no RSAAuthentication yes

      PasswordAuthentication yes BatchMode no CheckHostIP yes

      StrictHostKeyChecking ask IdentityFile ~/.ssh/identity Port 22 Cipher 3des

      EscapeChar ~

      5]配置openssh之/etc/ssh/sshd_config文件 vi /etc/ssh/sshd_config Port 22 ListenAddress 0.0.0.0 ListenAddress :: HostKey /etc/ssh/ssh_host_key HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key KeyRegenerationInterval 3600 ServerKeyBits 768

      SyslogFacility AUTH LogLevel INFO

      LoginGraceTime 600

      #PermitRootLogin yes #還是不要讓root直接登錄為妙!StrictModes yes RSAAuthentication yes PubkeyAuthentication yes RhostsAuthentication no IgnoreRhosts yes RhostsRSAAuthentication no HostbasedAuthentication no IgnoreUserKnownHosts no PasswordAuthentication yes PermitEmptyPasswords no Subsystem sftp /usr/local/ssh/libexec/sftp-server 6]配置用戶的加密密鑰

      useradd test passwd test su test ssh-keygen-d 出現(xiàn)提示請(qǐng)回車并輸入passwd,再次輸入passwd。

      注:這個(gè)密碼是系統(tǒng)加密運(yùn)算時(shí)用到的,登錄時(shí)還用原來密碼。

      7]啟動(dòng)服務(wù)

      /etc/rc.d/init.d/sshd start 8]在客戶端用test帳號(hào)進(jìn)行測(cè)試。

      %%%%%%%%%%%%%%%%%%%%%%%%%%%%55 116 linux幾條命令的基本用法

      提示符為#表示需要root權(quán)限,$表示一般用戶權(quán)限即可 1.linux下面命令行查找文件的兩個(gè)方法

      1)find $ find 路徑-name 待查找文件-print-xdev參數(shù)把查詢操作限制在當(dāng)前的文件系統(tǒng)之中: $ find /mnt/dos-name *.sys-print-xdev 2)locate + updatedb: # updatedb $ locate 待查找文件

      2.使用whatis和apropos命令獲取命令簡(jiǎn)介 # makewhatis //更新whatis數(shù)據(jù)庫(kù) $ whatis w //查看命令w的功能

      $ apropos search //查找有search功能的有哪些命令

      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 117 在RedHat Linux環(huán)境中實(shí)現(xiàn)雙網(wǎng)卡綁定

      用于雙網(wǎng)卡在同一網(wǎng)段內(nèi)的情況,可以實(shí)現(xiàn)流量均衡或者備份 1.#cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-bond0--2 #vi ifcfg-bond0 將第一行改成 DEVICE=bond0--3 # vi /etc/modules.conf 加入兩行

      alias bond0 bonding

      options bond0 miimon=100 mode=1

      --4 # vi /etc/rc.d/rc.local 加入兩行

      ifenslave bond0 eth0 eth1 route add-net 192.168.0.0 netmask 255.255.255.0 bond0--5 reboot 重啟會(huì)看見:

      ................Bringing up interface bond0 OK Bringing up interface eth0 OK Bringing up interface bond1 OK--6.檢查: #netstat-r 192.168.0.0 255.255.255.0 0 40 0 0 bond0 192.168.0.0 255.255.255.0 0 40 0 0 eth0 192.168.0.0 255.255.255.0 0 40 0 0 eth1 這時(shí)候看看你的網(wǎng)卡后面的燈, 他們閃的頻率是一樣的..當(dāng)#ifdown eth0 時(shí), 轉(zhuǎn)換有5-6秒的延時(shí).--注意:

      如果網(wǎng)絡(luò)不通需要從啟bind # ifdown bind0

      #ifup bind0

      網(wǎng)卡綁定用在vncserver 或scp中就不靈了 118 route命令使用方法

      route命令主要用于手動(dòng)配置靜態(tài)路由表 例:增加一條通過網(wǎng)關(guān)到達(dá)令一子網(wǎng)的路由

      #route add net remote_net_ip gateway_ip 1

      其中add代表要增加路由,net表示路由到達(dá)的是一個(gè)網(wǎng)絡(luò)而不是一臺(tái)主機(jī),1代表遠(yuǎn)端網(wǎng)絡(luò)需通過網(wǎng)關(guān)才能到達(dá)

      (直接通過網(wǎng)絡(luò)接口相連時(shí),該參數(shù)用0)命令格式:

      #route add-net remote_net_ip gateway_ip-netmask netmask #route add-host host_ip local_interface_ip-interface

      使用“delete”,“change”命令參數(shù)可以對(duì)路由表中的路由信息進(jìn)行刪除和修改

      使用“netstat-rn”命令查看當(dāng)前的路由信息

      過修改文件/etc/defaultrouter可以設(shè)置一些默認(rèn)路由 $$$$$$$$$$$$$$$$$$$$$$$$$$$$ 122 find命令詳細(xì)用法 名稱 : find 用法 : find

      使用說明 :

      將文件系統(tǒng)內(nèi)符合 expression 的文件列出來。你可以指要文件的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來。

      find 根據(jù)下列規(guī)則判斷 path 和 expression,在命令列上第一個(gè)] 范圍 ;如[A-Z]即A,B,C一直到Z都符合要求.所有的單個(gè)字符

      * 所有字符,長(zhǎng)度可以為0

      3、舉例

      # ps-ef | grep in.telnetd

      root 19955 181 0 13:43:53 ? 0:00 in.telnetd # more size.txt size文件的內(nèi)容 b124230 b034325 a081016 m7187998 m7282064 a022021 a061048 m9324822 b103303 a013386 b044525 m8987131 B081016 M45678

      B103303 BADc2345 # more size.txt | grep '[a-b]' 范圍 ;如[A-Z]即A,B,C一直到Z都符合要求 b124230 b034325 a081016 a022021 a061048 b103303 a013386 b044525 # more size.txt | grep '[a-b]'* b124230 b034325 a081016 m7187998 m7282064 a022021 a061048 m9324822 b103303 a013386 b044525 m8987131 B081016 M45678

      B103303 BADc2345 # more size.txt | grep '' 單個(gè)字符;如[A] 即A符合要求 b124230 b034325 b103303 b044525 # more size.txt | grep '[bB]' b124230 b034325 b103303 b044525 B081016 B103303 BADc2345 # grep 'root' /etc/group root::0:root bin::2:root,bin,daemon sys::3:root,bin,sys,adm adm::4:root,adm,daemon uucp::5:root,uucp mail::6:root tty::7:root,tty,adm lp::8:root,lp,adm nuucp::9:root,nuucp daemon::12:root,daemon

      # grep '^root' /etc/group 匹配正則表達(dá)式的開始行 root::0:root # grep 'uucp' /etc/group uucp::5:root,uucp nuucp::9:root,nuucp # grep '/tmp/sharetab.$$ [ “x$fstype”!= xnfs ] && echo “$patht$rest$fstypet$optst$desc” >>/tmp/sharetab.$$

      /usr/bin/touch-r /etc/dfs/sharetab /tmp/sharetab.$$ /usr/bin/mv-f /tmp/sharetab.$$ /etc/dfs/sharetab if [-f /etc/dfs/dfstab ] && /usr/bin/egrep-v '^[ ]*(#|$)' if [ $startnfsd-eq 0-a-f /etc/rmmount.conf ] && if [ $startnfsd-ne 0 ];then elif [!-n “$_INIT_RUN_LEVEL” ];then while [ $wtime-gt 0 ];do wtime=`expr $wtime-1` if [ $wtime-eq 0 ];then

      echo “Usage: $0 { start | stop }” # more size.txt the test file their are files The end

      # grep 'the' size.txt the test file their are files # grep '' size.txt the test file

      # grep '' size.txt the test file

      # grep '' size.txt the test file The end 119 Emacs 安裝 1.獲得 Emacs

      http://ftp.gnu.org/pub/gnu/emacs/ http://savannah.gnu.org/projects/emacs/ ftp://soft.eeatech.org:11021/incoming/other/ 2.安裝方法

      PATH=%emacs%/bin 3.基本配置

      Emacs 的配置文件.emacs or _emacs HOME=%path% 120 UNIX awk使用手冊(cè) 什么是awk?

      你可能對(duì)UNIX比較熟悉,但你可能對(duì)awk很陌生,這一點(diǎn)也不奇怪,的確,與其優(yōu)秀的功能相比,awk還遠(yuǎn)沒達(dá)到它應(yīng)有的知名度。awk是什么?與其它大多數(shù)UNIX命令不同的是,從名字上看,我們不可能知道awk的功能:它既不是具有獨(dú)立意義的英文單詞,也不是幾個(gè)相關(guān)單詞的縮寫。事實(shí)上,awk是三個(gè)人名的縮寫,他們是:Aho、(Peter)Weinberg和(Brain)Kernighan。正是這三個(gè)人創(chuàng)造了awk---一個(gè)優(yōu)秀的樣式掃描與處理工具。

      AWK的功能是什么?與sed和grep很相似,awk是一種樣式掃描與處理工具。但其功能卻大大強(qiáng)于sed和grep。awk提供了極其強(qiáng)大的功能:它幾乎可以完成 grep和sed所能完成的全部工作,同時(shí),它還可以可以進(jìn)行樣式裝入、流控制、數(shù)學(xué)運(yùn)算符、進(jìn)程控制語(yǔ)句甚至于內(nèi)置的變量和函數(shù)。它具備了一個(gè)完整的語(yǔ)言所應(yīng)具有的幾乎所有精美特性。實(shí)際上,awk的確擁有自己的語(yǔ)言:awk程序設(shè)計(jì)語(yǔ)言,awk的三位創(chuàng)建者已將它正式定義為:樣式掃描和處理語(yǔ)言。

      為什么使用awk?

      使用awk的第一個(gè)理由是基于文本的樣式掃描和處理是我們經(jīng)常做的工作,awk所做的工作有些象數(shù)據(jù)庫(kù),但與數(shù)據(jù)庫(kù)不同的是,它處理的是文本文件,這些文件沒有專門的存儲(chǔ)格式,普通的人們就能編輯、閱讀、理解和處理它們。而數(shù)據(jù)庫(kù)文件往往具有特殊的存儲(chǔ)格式,這使得它們必須用數(shù)據(jù)庫(kù)處理程序來處理它們。既然這種類似于數(shù)據(jù)庫(kù)的處理工作我們經(jīng)常會(huì)遇到,我們就應(yīng)當(dāng)找到處理它們的簡(jiǎn)便易行的方法,UNIX有很多這方面的工具,例如sed、grep、sort以及find等等,awk是其中十分優(yōu)秀的一種。

      使用awk的第二個(gè)理由是awk是一個(gè)簡(jiǎn)單的工具,當(dāng)然這是相對(duì)于其強(qiáng)大的功能來說的。的確,UNIX有許多優(yōu)秀的工具,例如UNIX天然的開發(fā)工具C語(yǔ)言及其延續(xù)C++就非常的優(yōu)秀。但相對(duì)于它們來說,awk完成同樣的功能要方便和簡(jiǎn)捷得多。這首先是因?yàn)閍wk提供了適應(yīng)多種需要的解決方案:從解決簡(jiǎn)單問題的awk命令行到復(fù)雜而精巧的awk程序設(shè)計(jì)語(yǔ)言,這樣做的好處是,你可以不必用復(fù)雜的方法去解決本來很簡(jiǎn)單的問題。例如,你可以用一個(gè)命令行解決簡(jiǎn)單的問題,而C不行,即使一個(gè)再簡(jiǎn)單的程序,C語(yǔ)言也必須經(jīng)過編寫、編譯的全過程。其次,awk本身是解釋執(zhí)行的,這就使得awk程序不必經(jīng)過編譯的過程,同時(shí),這也使得它與shell script程序能夠很好的契合。最后,awk本身較C語(yǔ)言簡(jiǎn)單,雖然awk吸收了C語(yǔ)言很多優(yōu)秀的成分,熟悉C語(yǔ)言會(huì)對(duì)學(xué)習(xí)awk有很大的幫助,但 awk本身不須要會(huì)使用C語(yǔ)言——一種功能強(qiáng)大但需要大量時(shí)間學(xué)習(xí)才能掌握其技巧的開發(fā)工具。

      使用awk的第三個(gè)理由是awk是一個(gè)容易獲得的工具。與C和C++語(yǔ)言不同,awk只有一個(gè)文件(/bin/awk),而且?guī)缀趺總€(gè)版本的UNIX都提供各自版本的awk,你完全不必費(fèi)心去想如何獲得awk。但C語(yǔ)言卻不是這樣,雖然C語(yǔ)言是UNIX天然的開發(fā)工具,但這個(gè)開發(fā)工具卻是單獨(dú)發(fā)行的,換言之,你必須為你的UNIX版本的C語(yǔ)言開發(fā)工具單獨(dú)付費(fèi)(當(dāng)然使用D版者除外),獲得并安裝它,然后你才可以使用它。

      基于以上理由,再加上awk強(qiáng)大的功能,我們有理由說,如果你要處理與文本樣式掃描相關(guān)的工作,awk應(yīng)該是你的第一選擇。在這里有一個(gè)可遵循的一般原則:如果你用普通的shell工具或shell script有困難的話,試試awk,如果awk仍不能解決問題,則便用C語(yǔ)言,如果C語(yǔ)言仍然失敗,則移至C++。

      awk的調(diào)用方式

      前面曾經(jīng)說過,awk提供了適應(yīng)多種需要的不同解決方案,它們是:

      一、awk命令行,你可以象使用普通UNIX命令一樣使用awk,在命令行中你也可以使用awk程序設(shè)計(jì)語(yǔ)言,雖然awk支持多行的錄入,但是錄入長(zhǎng)長(zhǎng)的命令行并保證其正確無誤卻是一件令人頭疼的事,因此,這種方法一般只用于解決簡(jiǎn)單的問題。當(dāng)然,你也可以在shell script程序中引用awk命令行甚至awk程序腳本。

      二、使用-f選項(xiàng)調(diào)用awk程序。awk允許將一段awk程序?qū)懭胍粋€(gè)文本文件,然后在awk命令行中用-f選項(xiàng)調(diào)用并執(zhí)行這段程序。具體的方法我們將在后面的awk語(yǔ)法中講到。

      三、利用命令解釋器調(diào)用awk程序:利用UNIX支持的命令解釋器功能,我們可以將一段awk程序?qū)懭胛谋疚募?,然后在它的第一行加? #!/bin/awk-f

      并賦予這個(gè)文本文件以執(zhí)行的權(quán)限。這樣做之后,你就可以在命令行中用類似于下面這樣的方式調(diào)用并執(zhí)行這段awk程序了。

      awk腳本文本名 待處理文件

      awk的語(yǔ)法:

      與其它UNIX命令一樣,awk擁有自己的語(yǔ)法:

      awk [-F re] [parameter...] ['prog'] [-f progfile][in_file...] 參數(shù)說明:

      -F re:允許awk更改其字段分隔符。

      parameter: 該參數(shù)幫助為不同的變量賦值。

      'prog': awk的程序語(yǔ)句段。這個(gè)語(yǔ)句段必須用單拓號(hào):'和'括起,以防被shell解釋。這個(gè)程序語(yǔ)句段的標(biāo)準(zhǔn)形式為:

      'pattern {action}' 其中pattern參數(shù)可以是egrep正則表達(dá)式中的任何一個(gè),它可以使用語(yǔ)法/re/再加上一些樣式匹配技巧構(gòu)成。與sed類似,你也可以使用“,”分開兩樣式以選擇某個(gè)范圍。關(guān)于匹配的細(xì)節(jié),你可以參考附錄,如果仍不懂的話,找本UNIX書學(xué)學(xué)grep和sed(本人是在學(xué)習(xí)ed時(shí)掌握匹配技術(shù)的)。action參數(shù)總是被大括號(hào)包圍,它由一系統(tǒng)awk語(yǔ)句組成,各語(yǔ)句之間用“;”分隔。awk解釋它們,并在pattern給定的樣式匹配的記錄上執(zhí)行其操作。與shell類似,你也可以使用―#‖作為注釋符,它使―#‖到行尾的內(nèi)容成為注釋,在解釋執(zhí)行時(shí),它們將被忽略。你可以省略pattern和 action之一,但不能兩者同時(shí)省略,當(dāng)省略pattern時(shí)沒有樣式匹配,表示對(duì)所有行(記錄)均執(zhí)行操作,省略action時(shí)執(zhí)行缺省的操作——在標(biāo)準(zhǔn)輸出上顯示。

      -f progfile:允許awk調(diào)用并執(zhí)行progfile指定有程序文件。progfile是一個(gè)文本文件,他必須符合awk的語(yǔ)法。

      in_file:awk的輸入文件,awk允許對(duì)多個(gè)輸入文件進(jìn)行處理。值得注意的是awk不修改輸入文件。如果未指定輸入文件,awk將接受標(biāo)準(zhǔn)輸入,并將結(jié)果顯示在標(biāo)準(zhǔn)輸出上。awk支持輸入輸出重定向。

      awk的記錄、字段與內(nèi)置變量:

      前面說過,awk處理的工作與數(shù)據(jù)庫(kù)的處理方式有相同之處,其相同處之一就是awk支持對(duì)記錄和字段的處理,其中對(duì)字段的處理是grep和sed不能實(shí)現(xiàn)的,這也是awk優(yōu)于二者的原因之一。在awk中,缺省的情況下總是將文本文件中的一行視為一個(gè)記錄,而將一行中的某一部分作為記錄中的一個(gè)字段。為了操作這些不同的字段,awk借用shell的方法,用1,2,3...這樣的方式來順序地表示行(記錄)中的不同字段。特殊地,awk用0表示整個(gè)行(記錄)。不同的字段之間是用稱作分隔符的字符分隔開的。系統(tǒng)默認(rèn)的分隔符是空格。awk允許在命令行中用-F re的形式來改變這個(gè)分隔符。事實(shí)上,awk用一個(gè)內(nèi)置的變量FS來記憶這個(gè)分隔符。awk中有好幾個(gè)這樣的內(nèi)置變量,例如,記錄分隔符變量RS、當(dāng)前工作的記錄數(shù)NR等等,本文后面的附表列出了全部的內(nèi)置變量。這些內(nèi)置的變量可以在awk程序中引用或修改,例如,你可以利用NR變量在模式匹配中指定工作范圍,也可以通過修改記錄分隔符RS讓一個(gè)特殊字符而不是換行符作為記錄的分隔符。

      例:顯示文本文件myfile中第七行到第十五行中以字符%分隔的第一字段,第三字段和第七字段:

      awk-F % 'NR==7,NR==15 {printf 1 3 7}' awk的內(nèi)置函數(shù)

      awk 之所以成為一種優(yōu)秀的程序設(shè)計(jì)語(yǔ)言的原因之一是它吸收了某些優(yōu)秀的程序設(shè)計(jì)語(yǔ)言(例如C)語(yǔ)言的許多優(yōu)點(diǎn)。這些優(yōu)點(diǎn)之一就是內(nèi)置函數(shù)的使用,awk定義并支持了一系列的內(nèi)置函數(shù),由于這些函數(shù)的使用,使得awk提供的功能更為完善和強(qiáng)大,例如,awk使用了一系列的字符串處理內(nèi)置函數(shù)(這些函數(shù)看起來與C 語(yǔ)言的字符串處理函數(shù)相似,其使用方式與C語(yǔ)言中的函數(shù)也相差無幾),正是由于這些內(nèi)置函數(shù)的使用,使awk處理字符串的功能更加強(qiáng)大。本文后面的附錄中列有一般的awk所提供的內(nèi)置函數(shù),這些內(nèi)置函數(shù)也許與你的awk版本有些出入,因此,在使用之前,最好參考一下你的系統(tǒng)中的聯(lián)機(jī)幫助。

      作為內(nèi)置函數(shù)的一個(gè)例子,我們將在這里介紹awk的printf函數(shù),這個(gè)函數(shù)使得awk與c語(yǔ)言的輸出相一致。實(shí)際上,awk中有許多引用形式都是從C語(yǔ)言借用過來的。如果你熟悉C語(yǔ)言,你也許會(huì)記得其中的printf函數(shù),它提供的強(qiáng)大格式輸出功能曾經(jīng)帶我們?cè)S多的方便。幸運(yùn)的是,我們?cè)赼wk中又和它重逢了。awk中printf幾乎與C語(yǔ)言中一模一樣,如果你熟悉C語(yǔ)言的話,你完全可以照C語(yǔ)言的模式使用awk中的printf。因此在這里,我們只給出一個(gè)例子,如果你不熟悉的話,請(qǐng)隨便找一本C語(yǔ)言的入門書翻翻。例:顯示文件myfile中的行號(hào)和第3字段:

      awk '{printf“%03d%sn”,NR,1}' myfile 在命令行使用awk

      按照順序,我們應(yīng)當(dāng)講解awk程序設(shè)計(jì)的內(nèi)容了,但在講解之前,我們將用一些例子來對(duì)前面的知識(shí)進(jìn)行回顧,這些例子都是在命令行中使用的,由此我們可以知道在命令行中使用awk是多么的方便。這樣做的原因一方面是為下面的內(nèi)容作鋪墊,另一方面是介紹一些解決簡(jiǎn)單問題的方法,我們完全沒有必要用復(fù)雜的方法來解決簡(jiǎn)單的問題----既然awk提供了較為簡(jiǎn)單的方法的話。

      例:顯示文本文件mydoc匹配(含有)字符串“sun”的所有行。

      awk '/sun/{print}' mydoc

      由于顯示整個(gè)記錄(全行)是awk的缺省動(dòng)作,因此可以省略action項(xiàng)。

      awk '/sun/' mydoc

      例:下面是一個(gè)較為復(fù)雜的匹配的示例:

      awk '/[Ss]un/,/[Mm]oon/ {print}' myfile

      它將顯示第一個(gè)匹配Sun或sun的行與第一個(gè)匹配Moon或moon的行之間的行,并顯示到標(biāo)準(zhǔn)輸出上。

      例:下面的示例顯示了內(nèi)置變量和內(nèi)置函數(shù)length()的使用:

      awk 'length(0)>80 {print NR}' myfile

      該命令行將顯示文本myfile中所有超過80個(gè)字符的行號(hào),在這里,用0表示整個(gè)記錄(行),同時(shí),內(nèi)置變量NR不使用標(biāo)志符''。

      例:作為一個(gè)較為實(shí)際的例子,我們假設(shè)要對(duì)UNIX中的用戶進(jìn)行安全性檢查,方法是考察/etc下的passwd文件,檢查其中的passwd字段(第二字段)是否為“*”,如不為“*”,則表示該用戶沒有設(shè)置密碼,顯示出這些用戶名(第一字段)。我們可以用如下語(yǔ)句實(shí)現(xiàn):

      #awk-F: '2==“" {printf(”%s no password!n“,1' /etc/passwd 在這個(gè)示例中,passwd文件的字段分隔符是―:‖,因此,必須用-F:來更改默認(rèn)的字段分隔符,這個(gè)示例中也涉及到了內(nèi)置函數(shù)printf的使用。

      awk的變量

      如同其它程序設(shè)計(jì)語(yǔ)言一樣,awk允許在程序語(yǔ)言中設(shè)置變量,事實(shí)上,提供變量的功能是程序設(shè)計(jì)語(yǔ)言的其本要求,不提供變量的程序設(shè)計(jì)語(yǔ)言本人還從未見過。

      awk 提供兩種變量,一種是awk內(nèi)置的變量,這前面我們已經(jīng)講過,需要著重指出的是,與后面提到的其它變量不同的是,在awk程序中引用內(nèi)置變量不需要使用標(biāo)志符”“(回憶一下前面講過的NR的使用)。awk提供的另一種變量是自定義變量。awk允許用戶在awk程序語(yǔ)句中定義并調(diào)用自已的變量。當(dāng)然這種變量不能與內(nèi)置變量及其它awk保留字相同,在awk中引用自定義變量必須在它前面加上標(biāo)志符”“。與C語(yǔ)言不同的是,awk中不需要對(duì)變量進(jìn)行初始化,awk根據(jù)其在awk中第一次出現(xiàn)的形式和上下文確定其具體的數(shù)據(jù)類型。當(dāng)變量類型不確定時(shí),awk默認(rèn)其為字符串類型。這里有一個(gè)技巧:如果你要讓你的 awk程序知道你所使用的變量的明確類型,你應(yīng)當(dāng)在在程序中給它賦初值。在后面的實(shí)例中,我們將用到這一技巧。

      運(yùn)算與判斷:

      作為一種程序設(shè)計(jì)語(yǔ)言所應(yīng)具有的特點(diǎn)之一,awk支持多種運(yùn)算,這些運(yùn)算與C語(yǔ)言提供的幾本相同:如+、-、*、/、%等等,同時(shí),awk也支持C語(yǔ)言中類似++、--、+=、-=、=+、=-之類的功能,這給熟悉C語(yǔ)言的使用者編寫awk程序帶來了極大的方便。作為對(duì)運(yùn)算功能的一種擴(kuò)展,awk還提供了一系列內(nèi)置的運(yùn)算函數(shù)(如log、sqr、cos、sin等等)和一些用于對(duì)字符串進(jìn)行操作(運(yùn)算)的函數(shù)(如length、substr等等)。這些函數(shù)的引用大大的提高了awk的運(yùn)算功能。

      作為對(duì)條件轉(zhuǎn)移指令的一部分,關(guān)系判斷是每種程序設(shè)計(jì)語(yǔ)言都具備的功能,awk也不例外。awk 中允許進(jìn)行多種測(cè)試,如常用的==(等于)、!=(不等于)、>(大于)、=(大于等于)、>=(小于等于)等等,同時(shí),作為樣式匹配,還提供了~(匹配于)和!~(不匹配于)判斷。

      作為對(duì)測(cè)試的一種擴(kuò)充,awk也支持用邏輯運(yùn)算符:!(非)、&&(與)、||(或)和括號(hào)()進(jìn)行多重判斷,這大大增強(qiáng)了awk的功能。本文的附錄中列出了awk所允許的運(yùn)算、判斷以及操作符的優(yōu)先級(jí)。

      awk的流程控制

      流程控制語(yǔ)句是任何程序設(shè)計(jì)語(yǔ)言都不能缺少的部分。任何好的語(yǔ)言都有一些執(zhí)行流程控制的語(yǔ)句。awk提供的完備的流程控制語(yǔ)句類似于C語(yǔ)言,這給我們編程帶來了極大的方便。

      1、BEGIN和END:

      在awk 中兩個(gè)特別的表達(dá)式,BEGIN和END,這兩者都可用于pattern中(參考前面的awk語(yǔ)法),提供BEGIN和END的作用是給程序賦予初始狀態(tài)和在程序結(jié)束之后執(zhí)行一些掃尾的工作。任何在BEGIN之后列出的操作(在{}內(nèi))將在awk開始掃描輸入之前執(zhí)行,而END之后列出的操作將在掃描完全部的輸入之后執(zhí)行。因此,通常使用BEGIN來顯示變量和預(yù)置(初始化)變量,使用END來輸出最終結(jié)果。

      例:累計(jì)銷售文件xs中的銷售金額(假設(shè)銷售金額在記錄的第三字段):

      awk

      >'BEGIN { FS=”:“;print ”統(tǒng)計(jì)銷售金額“;total=0} >{print 3;total=total+3;}

      >END {printf ”銷售金額總計(jì):%.2f“,total}' sx(注:>是shell提供的第二提示符,如要在shell程序awk語(yǔ)句和awk語(yǔ)言中換行,則需在行尾加反斜杠)

      在這里,BEGIN預(yù)置了內(nèi)部變量FS(字段分隔符)和自定義變量total,同時(shí)在掃描之前顯示出輸出行頭。而END則在掃描完成后打印出總合計(jì)。

      2、流程控制語(yǔ)句

      awk提供了完備的流程控制語(yǔ)句,其用法與C語(yǔ)言類似。下面我們一一加以說明:

      2.1、if...else語(yǔ)句: 格式:

      if(表達(dá)式)語(yǔ)句1 else 語(yǔ)句2 格式中”語(yǔ)句1"可以是多個(gè)語(yǔ)句,如果你為了方便awk判斷也方便你自已閱讀,你最好將多個(gè)語(yǔ)句用{}括起來。awk分枝結(jié)構(gòu)允許嵌套,其格式為:

      if(表達(dá)式1)

      {if(表達(dá)式2)

      語(yǔ)句1 else 語(yǔ)句2 }

      語(yǔ)句3 else {if(表達(dá)式3)語(yǔ)句4 else 語(yǔ)句5 }

      語(yǔ)句6 當(dāng)然實(shí)際操作過程中你可能不會(huì)用到如此復(fù)雜的分枝結(jié)構(gòu),這里只是為了給出其樣式罷了。

      2.2、while語(yǔ)句

      格式為:

      while(表達(dá)式)語(yǔ)句

      2.3、do-while語(yǔ)句

      格式為:

      do { 語(yǔ)句

      }while(條件判斷語(yǔ)句)

      2.4、for語(yǔ)句

      格式為:

      for(初始表達(dá)式;終止條件;步長(zhǎng)表達(dá)式)

      {語(yǔ)句}

      在awk 的 while、do-while和for語(yǔ)句中允許使用break,continue語(yǔ)句來控制流程走向,也允許使用exit這樣的語(yǔ)句來退出。break 中斷當(dāng)前正在執(zhí)行的循環(huán)并跳到循環(huán)外執(zhí)行下一條語(yǔ)句。continue從當(dāng)前位置跳到循環(huán)開始處執(zhí)行。對(duì)于exit的執(zhí)行有兩種情況:當(dāng)exit語(yǔ)句不在 END中時(shí),任何操作中的exit命令表現(xiàn)得如同到了文件尾,所有模式或操作執(zhí)行將停止,END模式中的操作被執(zhí)行。而出現(xiàn)在END中的exit將導(dǎo)致程序終止。例:為了

      awk中的自定義函數(shù)

      定義和調(diào)用用戶自己的函數(shù)是幾乎每個(gè)高級(jí)語(yǔ)言都具有的功能,awk也不例外,但原始的awk并不提供函數(shù)功能,只有在nawk或較新的awk版本中才可以增加函數(shù)。

      函數(shù)的使用包含兩部分:函數(shù)的定義與函數(shù)調(diào)用。其中函數(shù)定義又包括要執(zhí)行的代碼(函數(shù)本身)和從主程序代碼傳遞到該函數(shù)的臨時(shí)調(diào)用。

      第二篇:stata命令總結(jié)

      表2-1: 回歸分析相關(guān)命令一覽

      命令用途

      anova 方差和協(xié)方差分析 heckman Heckman 篩選模型

      intreg 離散型變量模型,包括Tobit、cnreg 和intreg ivreg 工具變量法(IV 或2SLS)

      newey Newey-West 標(biāo)準(zhǔn)差設(shè)定下的回歸

      prais 針對(duì)序列相關(guān)的Prais-Winsten, Cochrane-Orcutt, or Hildreth-Lu 回歸 qreg 分量回歸 reg OLS 回歸 sw 逐步回歸法

      reg3 三階段最小二乘回歸

      rreg 穩(wěn)健回歸(不同于方差穩(wěn)健型回歸,即White 方法)sureg 似無相關(guān)估計(jì)

      svyheckman 調(diào)查數(shù)據(jù)的Heckman 篩選模型 svyintreg 調(diào)查數(shù)據(jù)的間斷變量回歸 svyregress 調(diào)查數(shù)據(jù)的線性回歸 tobit Tobit 回歸

      treatreg treatment 效應(yīng)模型 truncreg 截?cái)嗷貧w

      表2-2: 時(shí)間序列命令一覽

      命令用途

      clemao1 允許結(jié)構(gòu)突變的單位根檢驗(yàn) zandrews dfuller dfgls pperron coin 單方程協(xié)整檢驗(yàn)

      dwstat 參考dwstat2 , durbina2 durbinh

      表2-3: Panel Data 模型相關(guān)命令一覽I 命令模型

      統(tǒng)計(jì)描述相關(guān)命令:

      xtdes 變量類型,數(shù)據(jù)類型描述 xtsum 基本統(tǒng)計(jì)量 xttab 按表格形式列示 xtpattern 面板數(shù)據(jù)的模式 估計(jì)相關(guān)命令:

      xtreg 面板數(shù)據(jù)模型(固定效應(yīng)、隨機(jī)效應(yīng))

      xtregar 含有AR(1)干擾項(xiàng)的固定效應(yīng)和隨機(jī)效應(yīng)面板數(shù)據(jù)模型

      xtgls 截面-時(shí)序混合模型,可處理異方差、組內(nèi)序列相關(guān)和組間相關(guān)性 xtpcse OLS or Prais-Winsten models with panel-corrected standard errors xtrchh Hildreth-Houck random coefficients models xtivreg 面板模型的工具變量或兩階段最小二乘法估計(jì) xtabond Arellano-Bond(1991)線性動(dòng)態(tài)面板數(shù)據(jù)模型估計(jì)

      xtabond2 Arellano-Bover(1995)系統(tǒng)GMM 動(dòng)態(tài)面板數(shù)據(jù)模型估計(jì) xttobit Tobit 隨機(jī)效應(yīng)面板模型

      xtintreg Random-effects interval data regression models xtlogit Fe, Re, Pa logit models xtprobit Re, Pa probit models xtcloglog Re, Pa cloglog models xtpoisson Fe, Re, Pa Poisson models xtnbreg Fe, Re, Pa negative binomial models xtfrontier 面板隨機(jī)前沿模型

      xthtylor Hausman-Taylor estimator for error-components models

      表2-4: Panel Data 模型相關(guān)命令一覽II 命令模型

      假設(shè)檢驗(yàn)相關(guān):

      test Wald 檢驗(yàn),如時(shí)間效應(yīng)聯(lián)合顯著性檢驗(yàn) xttest0 隨機(jī)效應(yīng)檢驗(yàn) xttest1 面板序列相關(guān)檢驗(yàn) xttest2 ads xtserial Wooldridge 一階序列相關(guān)檢驗(yàn) xtab Arellano 面板一階序列相關(guān)檢驗(yàn) hausman Hausman 檢驗(yàn) 面板單位根和協(xié)整相關(guān): xtunit stata提供的檢驗(yàn)方法

      ipshin IPS(2003)面板單位根檢驗(yàn)

      levilin Levin,Lin和Chu(LLC, 2002)面板單位根檢驗(yàn) madfuller Sarno-Taylor(1998)面板單位根檢驗(yàn)

      xtfisher Maddala和Wu(1999),基于P 值的面板單位根檢驗(yàn)

      表2-5: Post-estimation Commands 命令名稱用途

      adjust 列示預(yù)測(cè)結(jié)果的均質(zhì),適于多種回歸分析,可分組列示 estimates 估計(jì)結(jié)果的存儲(chǔ)、再顯示、列表比較等 hausman Hausman 模型識(shí)別檢驗(yàn)

      lincom 獲得參數(shù)的線性組合,在Logit 模型中可以獲得系數(shù)線性組合的OR 值 linktest 但方程link 識(shí)別檢驗(yàn),用y 對(duì)Oy 和Oy2 回歸 lrtest 似然比(LR)檢驗(yàn)

      mfx 計(jì)算邊際效應(yīng)和彈性系數(shù) nlcom 系數(shù)的非線性組合 predict 獲得擬合值、殘差等

      predictnl 獲得非線性估計(jì)的擬合值、殘差等 test 線性約束的假設(shè)檢驗(yàn),Wald 檢驗(yàn) testnl 非線性約束的假設(shè)檢驗(yàn)

      vce 列示參數(shù)估計(jì)值的方差-協(xié)方差矩陣

      表2-6: 二維圖種類一覽

      圖形種類簡(jiǎn)單描述 scatter scatterplot line line plot connected connected-line plot scatteri scatter with immediate arguments area line plot with shading bar bar plot spike spike plot dropline dropline plot dot dot plot rarea range plot with area shading rbar range plot with bars rspike range plot with spikes rcap range plot with capped spikes rcapsym range plot with spikes capped with symbols rscatter range plot with markers rline range plot with lines rconnected range plot with lines and markers tsline time-series plot tsrline time-series range plot mband median-band line plot mspline spline line plot lowess LOWESS line plot lfit linear prediction plot qfit quadratic prediction plot fpfit fractional polynomial plot lfitci linear prediction plot with CIs qfitci quadratic prediction plot with CIs fpfitci fractional polynomial plot with CIs function line plot of function histogram histogram plot kdensity kernel density plot 表2-7: 二維圖選項(xiàng)一覽

      選項(xiàng)類別簡(jiǎn)單描述

      added line options draw lines at specified y or x values added text option display text at specified(y,x)value axis options labels, ticks, grids, log scales title options titles, subtitles, notes, captions legend option legend explaining what means what scale(#)resize text, markers, and line widths region options outlining, shading, aspect ratio, size aspect option constrain aspect ratio of plot region scheme(schemename)overall look by(varlist,...)repeat for subgroups nodraw suppress display of graph name(name,...)specify name for graph saving(filename,...)save graph in file advanced options difficult to explain 表2-9: 模擬分析相關(guān)命令一覽

      命令用途備注 抽樣相關(guān):

      corr2data 產(chǎn)生具有指定相關(guān)性的數(shù)據(jù)僅適用于模擬相關(guān)分析 drawnorm invnorm(uniform())產(chǎn)生服從標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)數(shù)函數(shù),可調(diào)節(jié)均值和方差 matuniform(r,c)產(chǎn)生均勻分布函數(shù)

      sample 從現(xiàn)有數(shù)據(jù)中進(jìn)行非重復(fù)隨機(jī)抽樣參考bsample sim arma 產(chǎn)生服從ARIMA 過程的隨機(jī)變量需要下載 Bootstrap 相關(guān): bootstrap bs bstat bsample MC 相關(guān): simulate MC simulation jknife 類似于MC permute postfile 存儲(chǔ)MC 的結(jié)果 statsby exp list

      第三篇:stata命令總結(jié)

      stata11常用命令

      注:JB統(tǒng)計(jì)量對(duì)應(yīng)的p大于0.05,則表明非正態(tài),這點(diǎn)跟sktest和swilk檢驗(yàn)剛好相反; dta為數(shù)據(jù)文件; gph為圖文件; do為程序文件;

      注意stata要區(qū)別大小寫; 不得用作用戶變量名:

      _all _n _N _skip _b _coef _cons _pi _pred _rc _weight double float long int in if using with 命令:

      讀入數(shù)據(jù)一種方式 input x y 1 4 2 5.5 3 6.2 4 7.7 5 8.5 end su/summarise/sum x 或 su/summarise/sum x,d 對(duì)分組的描述: sort group by group:su x %%%%% tabstat economy,stats(max)%返回變量economy的最大值

      %%stats括號(hào)里可以是:mean,count(非缺失觀測(cè)值個(gè)數(shù)),sum(總和),max,min,range,%% sd,var,cv(變易系數(shù)=標(biāo)準(zhǔn)差/均值),skewness,kurtosis,median,p1(1%分位

      %% 數(shù),類似地有p10, p25, p50, p75, p95, p99),iqr(interquantile range = p75 – p25)_all %描述全部

      _N 數(shù)據(jù)庫(kù)中觀察值的總個(gè)數(shù)。_n 當(dāng)前觀察值的位置。_pi 圓周率π的數(shù)值。list gen/generate %產(chǎn)生數(shù)列 egen wagemax=max(wage)clear use by(分組變量)set more 1/0 count %計(jì)數(shù)

      gsort +x(升序)gsort-x(降序)sort x 升序;并且其它變量順序會(huì)跟著改變 label var y “消費(fèi)” %添加標(biāo)簽 describe %描述數(shù)據(jù)文件的整體,包括觀測(cè)總數(shù),變量總數(shù),生成日期,每個(gè)變量的存儲(chǔ)類型(storage type),標(biāo)簽(label)replace x5=2*y if x!=3 %替換變量值

      replace age = 25 in 107 %令第107個(gè)觀測(cè)中age為25 rename y2 u %改變變量名

      drop in 2 %刪除全部變量的第2行

      drop if x==.刪去x為缺失值的所有記錄

      keep if x<2 %保留小于2的數(shù)據(jù),其余變量跟隨x改變 keep in 2/10 %保留第2-10個(gè)數(shù)

      keep x1-x5 %保留數(shù)據(jù)庫(kù)中介于x1和x5間的所有變量(包括x1和x5),其余變量刪除

      ci x1 x2,by(group)%算出置信區(qū)間,不過先前對(duì)group要先排序,即sort group;

      %by的意思逐個(gè)進(jìn)行

      cii 12 3.816667 0.2710343, level(90)%已知均值,方差,計(jì)算90%的置信區(qū)間

      cii 10 2 %obs=10,mean=2,以二項(xiàng)分布形式,計(jì)算置信區(qū)間 centile x,centile(2.5 25 50 75 97.5)%取分位數(shù) correlate/corr x y z %相關(guān)系數(shù)

      pwcorr x y,sig %給出原假設(shè)r=0的命令 %如果變量非服從正態(tài)分布,則spearman x y regress/reg mean year %回歸方程建立 reg y x,noconstant %無常數(shù)項(xiàng) predict meanhat %預(yù)測(cè)擬合值 predict e,residual %得到殘差 estat hettest % 異方差檢驗(yàn)

      dwstat % Durbin-Watson自相關(guān)檢驗(yàn) vif % 方差膨脹因子

      logit y x1 x2 x3(y取0或1,是被解釋變量,x1-x3是被解釋變量)%logit回歸

      probit y x1 x2 x3(y取0或1,是被解釋變量,x1-x3是被解釋變量)%probit回歸

      tobit y x1 x2 x3(y取值在0和1之間,是被解釋變量,x1-x3是被解釋變量)%tobit回歸

      sktest e %殘差正態(tài)性檢驗(yàn) p>0.05則接受原假設(shè),即服從正態(tài)分布; %% sktest是基于變量的偏度和斜度(正態(tài)分布的偏度為0,斜度為3)swilk x %基于Shapiro-Wilk檢驗(yàn)

      %%p值越小,越傾向于拒絕零假設(shè),也就是變量越有可能不服從正態(tài)分布 xi %生成虛擬變量 tabulat gender,summ(math)%用gender指標(biāo)對(duì)math進(jìn)行分類,返回兩類math的mean、std、freq tabulate=tab %gen f=int((shengao-164)/3)*3+164 組距為3 tabulate 變量名 [, generate(新變量)missing nofreq nolabel plot ] %%%%% generate(新變量)// 按分組變量產(chǎn)生啞變量 nofreq // 不顯示頻數(shù) nolabel // 不顯示數(shù)值標(biāo)記 plot // 顯示各組頻數(shù)圖示 missing // 包含缺失值

      cell // 顯示各小組的構(gòu)成比(小組之和為 1)column // 按欄顯示各組之構(gòu)成(各欄總計(jì)為 1)row // 按行顯示各組之構(gòu)成(各行總計(jì)為 1)%%%%% 求和,求最?。?mod(x,y)%求余數(shù)

      means %返回三種平均值 di normprob(1.96)di invnorm(0.05)di binomial(20,5,0.5)di invbinomial(20,5,0.5)di tprob(10,2)di invt(10.0.05)di fprob(3,27,1)di invfprob(3,27,0.05)di chi2(3,5)di invchi2(3,0.05)stack x y z,into(e)%把三列合成一列 xpose,clear %矩陣轉(zhuǎn)置

      append using d: