網管雜記

1.電腦輸入法失效。cmd––>mon可找回輸入法!php

2.c++.面向對象,c語言面向過程。html

3.Ctrl+Alt+Del熱啓動!!無加電自檢!!mysql

4.Linux––>partx  設備名   從新讀取磁盤的分區表!它若不舉,便用partprobelinux

5.linux服務器失敗時時,可用netstat –l命令來查看服務器端口是否在開啓!c++

6.linux的主機名,千萬別用hostname這個傻逼命令亂改主機名,要改必須三個地方都改,否則作服務器時會出現下面的錯誤getaddrinfo:localhost  Name  or service not  known.web

拯救方法以下,保證三處一致,即環境變量,本地文件(內),網絡文件(外)正則表達式

1hostnmae  newnameecho  $HOSTNAME顯示當前名字 (環境變量,最後改下)sql

2vim   /etc/hosts          修改 本機ip (見44條)  newname    (主機名,戶口本)shell

3,  vim  /etc/sysconfig/nework   修改HOSTNAME=newname  (網名,在網絡中對外宣稱的名字,即鄧北←_←數據庫

7.配置服務器時必定要記得,先備份一個配置文件(經典方法,在vim下 : set backup(得w即保存後退出纔會使set  backup 生效!!!切記!),當改動任何一個文件時,原文件則會被另存爲一個文件名爲filename~的文件,備份保存的是最原始),而後才進行配置!!!!

8.daemon, 守護進程。因此,會有,httpd,vsftpd,等系列d結尾的服務名。常見,用service服務是否開啓,看的就是該服務的守護進程是否開啓!!!

9.修改/etc/hosts.allow/etc/hosts.deny對服務器進行訪問限制。對telnet服務器,要寫成in.telnetd,ftp服務器要寫成vsftpd,不然無效!!!,修改後對,xinetd服務重啓!

由於兩個服務屬於不一樣的守護進程。

10.全部程序都由return  0 結束,因此,system應當在return以前。但析構函數通常在return後才調用,因此想顯示析構函數,可在其函數裏添加system("pause")

11.linux  不一樣用戶的環境設定有本身的環境變量。env查看環境變量。

12.電腦開機後啓動正常但顯示器不顯視,很明顯內存條出問題了,拔了內存條搽搽灰便可

13.軟件定義:程序和有關文檔資料的合稱 

軟件分類:系統軟件(使用和管理計算機的軟件)和應用軟件(專爲 

某一應用編制的軟件

常見的系統軟件有:操做系統,數據庫管理系統和程序設計語言 

常見的應用軟件有:輔助教學軟件,輔助設計軟件,文字處理軟件

信息管理軟件和自動控制軟件 

14.軟件還能夠分爲商業軟件(先買過來才能用,且不開源)、共享軟件(先試用,後付費,纔有後續功能)、自由軟件(免費,開源)

15.WiFiWLANWireless Local Area Network(無線局域網絡)具體採用的技術,也是目前WLAN的主流技術,WiFi也是推進這個技術的組織的名稱。 

16.LAN,局域網(Local  Area Network;MAN,城域網(Metropolitan  Area  Network;WAN,廣域網(Wide  Area  Network)。Wireless,無線的~so,,,,WLAN,無線局域網。

17.批處理是一種簡化的腳本語言,也稱做宏。它應用於DOSWindows系統中,它是由DOS或者Windows系統內嵌的命令解釋器(一般是COMMAND. COM或者CMD.EXE)解

釋運行。相似於Unix中的Shell腳本。批處理文件具備.bat或者.cmd的擴展命令行窗口名,其最簡單的例子,是逐行書寫在命令行中會用到的各類命令。(關鍵一句話,批處理相似shell編程!!)

18.linux中,sh  -x   scripts.sh,可顯示script腳本內容。sh  -n,檢查語法,-v,執行前,顯示腳本內容!!

19.c中用time_t來表明時間和日期,time_t是整數(int)型的,它用來記載從197011日到目前所經歷的秒數。因此到2038年,會歸零。

20.運行–services.msc,查看全部服務的狀態。regedit.exe打開註冊表。

21.MySql,建立的數據庫,表,,都在安裝目錄ProgramData下。

22.計算機––工具––文件夾選項查看,可顯示隱藏文件(如ProgramData文件夾),設置是否顯示文件後綴名等,一系列東西。

23.A綠橙藍棕白在前,46交換。B橙綠藍棕白在前,46交換。直通線,兩端都是B,鏈接不一樣設備。交叉線,一端A,一端B,鏈接相同設備。配置線,一端12345678.另外一端87654321.

24.配服務器,作服務器時必定要用Linux,Windiws太不安全!!!!

25.netstat   -aon  查看端口狀況。0.0.0.0:端口號,表示開放了端口,到不知道是誰開的(0.0.0.0這個ip自己就表明全部未知地址),同理,127.0.0.1:端口號,才表明本機開放了某端口。

使用netstat   -aon 能夠顯示開放端口及pid,再經過任務管理器–––查看–––選擇列,pid。根據pid找出佔用端口對應的應用程序。

26.記事本顯示行數:①格式––自動換行(取消)

               ②查看––狀態欄(選擇)

   可使用編輯查找–"關鍵字",快速查找內容!!

27.面對註冊表,和配置文件內容巨多的文件,均可以使用Shift+f,開始查找,F3查找下一個。快速找到所需內容。

28.confini文件通常是;或#表註釋!!!

29.要想php語句支持<?  ?>格式,則須要在php.ini中,把short_open_tag = On(開啓短標籤)。

30.模塊與配線架的線序要一致~要是BA,則都是BA

31.PHP中,$a="3g",$b="agj",$c=$a+$b=3(int),php中不一樣類型數據進行運算,會發生隱形轉換(==也會發生轉換),字符型轉整型,看首字符(注意!!是首字符,謝謝)是不是數字(首字符有多少截多少,截到非數字),是的話直接截取,不是則爲零。$d=$a+7=10!

32.php中,var_dump(數據),可檢測數據類型~eg:var_dump(bool(null)),輸出結果爲,bool  (false)

33.$a="tom",$$a=20,則$$a==$tom==20${$a}==tom~

34.$_POST[ "鍵名"],數據傳到post這個數組中而後經過[ ]+鍵名(即輸入框的名字)。至關於數組的下標,即數組加'下標'讀取數據。~PHP中鍵若是是浮點型則會強行轉換成整型。

可是,請注意PHP中鍵僅僅是值的標識。php中不會按鍵排序,他就是誰先出現誰在前!嗯,至關於入棧,出現一個進一個,無論鍵的大小,按照前後!$a[6]="gh";$a[2]="jk",此時數組的指針指向的是$a[6]!!!請切記!

35. Sql server 拷走數據庫––選擇數據庫任務分離。  

             添加數據庫––數據庫附加路徑

36.php編碼規範——1.語句塊中第一條語句要縮進一個Tab單位。

                  2.變量命名,駝峯(第一個單詞小寫,其他單詞首字母大寫)

                  3.數組命名用複數形式(由於它是個集合)。

                  4.函數命名也是駝峯規則,但通常包含一個動詞(eg:getName

    .              5.php類文件名時一般以.class.php爲後綴!!!

37.ps,或者fireworks修改照片大小時,點擊取消比例約束,可任意更改高和寬的數值!!!

38.localhost127.0.0.1都表明了httpd.cpnf的默認訪問目錄即DocumentRoot後所加加路徑!!!

39.php中用$變量名訪問變量,但常量(define定義)不用$!!!

40.php中可放心使用if-else-if語句。

41.linux中,exit可退出當前登錄帳號,回到login登錄界面!

42.linux 6runlevel(運行等級),0關機,1單用戶(維修系統),2單機(無NFS,3文本界面,4保留,5圖形界面,6重啓。

43.shell編程中,條件判斷式[□$1□=□$2□]□表明空格,必須嚴格按照這種格式,不然錯誤!!

44.linux作服務器,應該保證/etc/hosts文件能作到兩點,①127.0.0.1(ipv4),::1(ipv6)可以解析localhostlocalhost.localdomai②本機的ip能解析主機名hostname.

45.例行性工做←_←不懂?例假懂了吧←_←

46.CPU的工做負載。負載的意思是:CPU在單一時間點所負責的工做數量。因此當CPU的工做負載越大,就表明CPU必需要在不一樣的工做之間進行頻繁的工做切換。能夠推出一件小事:把一個大文件成天發送比分開發送時間短點,由於減小了cpu的來回切換時間!!!

47.來自信源(如電腦輸入的字)的信號稱爲基帶信號(即基本頻帶信號),許多信道不能傳輸這種低頻份量或直流份量的信號,因此要調製!調製分爲兩種基帶調製:僅對基帶信號的波形進行變換(仍爲基帶信號),使他可以與信道特性相適應。因爲這種基帶調製是把數字信號轉換爲另外一種形式的數字信號,因此你們更喜歡稱這種調製爲編碼(這就是什麼曼徹斯特碼那些渣渣)!帶通調製,即把基帶信號的頻率範圍到較高的頻段,並轉換爲模擬信號。即調幅,調頻,調相。

48.ADSL技術,叫作非對稱數字用戶線ADSL技術,它的非對稱指的是ADSL的下行(從ISP到用戶)帶寬遠遠大於上行(從用戶到ISP)帶寬。這是因爲用戶在上網時主要是從因特網下載各類文檔(信道或網絡利用率太高會產生很是大的時延,過必定數值成指數增加,因此下行帶寬分的大),而向因特網發送的信息量通常都不太大。

49.htmlphp語句能夠相互嵌套,但在誰的地盤要按誰的規矩來辦事。好比在html裏面加入php語句,則要用<?  ?>來聲明。在php中嵌套html要用echo "標籤"

50.※程序:一般爲二進制程序放置在存儲媒介中(如硬盤、光盤、軟盤、磁帶等),已物理文件形式存在。

  ※進程:程序被觸發後,執行者的權限與屬性、程序的程序代碼與所需數據等都會背加載到內存中,操做系統並給予這個內存的單元一個標識符(PID)。進程就是運行中的程序,一個程序能夠產生多個進程

51.linux下使用命令時最好,寫出命令的絕對路徑,這樣一勞永逸!eg:/bin/echo

52.php三種輸出方式:

 ① echo printf  echo能夠輸出多個字符串,用逗號隔開便可。)

  二者幾乎沒有區別,僅兩點echo前面不能使用錯誤抑制運算符@(壓住錯誤不提示,使腳本可運行)②print( )是一個有返回值的函數,因此print能夠做爲表達式的一部分。

② <?=  ?>

專用於在HTML代碼中嵌入php語句,eg:<body  bgccolor=’<?= 「red」?>’>

③print_r( )函數

用來輸出複合數據類型,如數組,類。Eg; print_r($class_name/$string_name);按照鍵 => 對照輸出全部變量成員/全部數組成員。函數須要class_name->函數名來調用。

53.echo  'testing' . 1 + 2 .  '45'  輸出245

 //echo  輸出字符串,但我不必加""雙引號是伴隨字符串的分界符,不是必須伴隨echo的,因此當echo輸出一個字符串或者輸出多個字符串但有別的分隔符時,我都不須要雙引號

:   .  運算符用來鏈接字符串,與+優先級相同。

54.phpc的區別:php有內存優化,$a=12,$s=$a,此時沒有爲$s開闢內存空間,而是指向$a這個空間!除非12這個值發生變化纔會爲$s開闢內存!!!!

 55.PHPisset()函數 通常用來檢測變量是否設置有值。

返回值:

若變量不存在則返回 FALSE 

若變量存在且其值爲NULL,也返回 FALSE 

若變量存在且值不爲NULL,則返回 TURE 

同時檢查多個變量時,每一個單項都符合上一條要求時才返回 TRUE,不然結果爲 FALSE 

 

PHPempty()函數 判斷值爲否爲空

返回值: 

若變量不存在則返回 TRUE 

若變量存在且其值爲""0"0"NULL、、FALSEarray()var $var; 以及沒有任何屬性的對象,則返回 TURE 

若變量存在且值不爲""0"0"NULL、、FALSEarray()var $var; 以及沒有任何屬性的對象,則返回 FALSE 

empty() 只能用於變量,傳遞任何其它參數都將形成Paser error而終止運行。 

檢測常量是否已設置可以使用 defined() 函數。 

56.linux下的軟件:****.i386.rpm表示在i386以上的cpu都已編譯,能夠安裝。!!

57.GIF分爲靜態gif和動畫gif兩種(只能顯示256色),是一種無損壞的壓縮格式,動畫gif是將多福圖像保存爲一個圖像文件,從而造成動畫。因此,GIF還是圖片文件!

58.綠色軟件,或稱可攜式軟件(英文稱爲Portable ApplicationPortable SoftwareGreen Software),指一類小型軟件,多數爲免費軟件,最大特色是軟件無需安裝即可使用,可存放於閃存中(所以稱爲可攜式軟體),移除後也不會將任何紀錄(註冊表消息等)留在本機計算機上。通俗點講綠色軟件就是指不用安裝,下載直接可使用的軟件。綠色軟件不會在註冊表中留下注冊表鍵值,因此相對通常的軟件來講,綠色軟件對系統的影響幾乎沒有,因此是很好的一種軟件類型。

59.Linux啓動過程:

BOIS——>Bootloader——>kernel——>init——>service——>login——>bash

linux出現,grup>且中止引導了,則說明/var/boot/grup.conf找不到了。解決方式:手動引導,即在grup>直接輸入grup.conf的三行內容!(bootloadet就是經過這三行引導內核的)

 應該背會,可用tab鍵補齊!!!

root  (hd0,0)   //gruplinux不要緊,人家統一都叫hd

注意root(hd0,0)直接必須有空格!引導時全部硬盤都用hd表示,且從0算起,hd0,而後tab查看有幾個分區!!!

 kernel   /vmlinuz-2.6.18-194.el5  ro  root=LABEL=/   rhgb  quiet 

  把內核載入內存,並以只讀方式掛載根分區。

後面能夠加參數好比,selinux=0(關閉selinux)   也能夠加6   固然這個參數,kernel不認識就會把它傳給第一個進程,即init  這時6傳過來,他就會一直重啓(init 6你懂的)

哦哦哦,原來在開機時,按ec,而後輸入1,再按b(boot)進入單用戶模式,就是把輸入的參數加在這一行上了,雖然這一行它不識別,它會把他傳給init這個進程,而init會識別,從而能夠識別,因此就進入單用戶模式了。同理,還能夠輸入輸入其餘參數!!

    ######此處可參考鳥哥615頁!很是好!!

此處的根/不是/etc那個根,而是(hd0,0)這個分區的根。若是/dev/sda1掛載在/boot下面則該/表示/boot.因此此處的根表示該分區所掛載的目錄的根!此處的根就是/boot目錄的根

。然後面那個root=LABEL=/  ,此處的根是系統的根分區那個根。LABEL卷標名,這個等式的意思是指出根分區的位置(由於根分區有系統啓動必要的配置等文件)他這個式子是經過卷標名找到根分區,也能夠經過/dev/sdan來直接表示根分區。root=根分區,這句話起到一個承上啓下的做用,上承kernel下啓動init.啓動init必須找到根分區!!!

 

 最好刪掉rhgb,它是紅帽自帶的參數,它用來遮蓋,美化內核啓動過程,去掉它            能夠看到內核具體哪裏啓動出錯了!!

label卷標,/表示根分區,如有多個根分區則爲/-1   /-2等等

 initrd   /initrd-2.6.18-194.el5.img   它和內核版本是對應的!!

initrd鏡像文件(Initial  PAM  DISK,初始化內存磁盤)鏡像文件,linux的模塊放在根分區上,須要時動態添加。但有些必要模塊啓動時就載入內存,好比驅動硬盤模塊。沒有驅動硬盤模塊就掛載不上根分區,這樣別的模塊就沒辦法動態添加了!!

注意,這裏是路徑多是/boot/,總之是狀況而定!!!

三招打完後,boot命令發出引導下就好了!!!

60.啓動服務時強烈建議使用/etc/rc.d/init.d/  服務名  start

61.RPC:Remote  Procdure  Calls,遠程過程調用協議,程序可使用這種協議向網絡中的另外一臺計算機上的程序請求服務。使用RPC的程序沒必要了解支持通訊的網絡協議(非面向過程),提升了程序的互操做性。普遍用於支持分佈式程序(不一樣組件分佈在不一樣計算機上的應用程序)的支持。

62.portmap服務,把RPC程序號轉換爲DARPA的協議端口號。即給應用程序找一個監聽的端口!!!

 

NFS服務器的啓動分三步:①service   portmap   start   ② service nfslock  start

③service  nfs  start  那個沒裝就裝上。

(這纔是關鍵)#啓動後修改/etc/exports   即在該文件里加上可共享目錄!!!

格式爲:可共享目錄   可共享IP

Eg  /var/nfs  10.37.1.44    //注意要共享的目錄nfs 權限必須爲777 。其父目錄無要求

如何使用共享目錄---->掛載後。纔可用!

貌似共享的目錄沒有w權限!

showmount   -e  IP  可查看該ip共享的目錄!

:服務器的防火牆得關了,要不你去配置好防火牆!!

Eg  mount  -t   nfs     IP:目錄     掛載點!! 

 

63.linux中命令太長,沒法一行輸入完,能夠用  \  來使開始新的一行輸入!!!

64.接觸一臺新的linux機器是,最好先alias一下,看看它定義有哪些別名,瞭解後便於操做。  [root@linuxidc.com ~]#alias

alias cp='cp -i'

alias l.='ls -d .* --color=tty'

alias ll='ls -l --color=tty'

alias ls='ls --color=tty'

alias mv='mv -i'

alias rm='rm -i'

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

這些是通常linux自帶的別名。eg:rm=rm -i要想不用別名用  \rm  /bin/rm(絕對路徑)

65.YUM安裝軟件四部曲://PS:RHEL 7.0鏡像中已配置好yum源,掛載鏡像便可使用

準備安裝源,即從光盤裏把要安裝的軟件所在的頻道拷貝到/var/yum(自定義路徑),而後刪掉Server裏面的repodata這個目錄,也能夠不用拷貝,從ftp(把資源放在一臺電腦上節省其餘電腦內存)或http上獲取。cp事後,爲/var/yum/Server!!注意createrepo加的路徑是

/var/yum即生成的repodata目錄和軟件包目錄Server在同一高度!!!

安裝createrepo(repo倉庫的縮寫),新建本地源目錄,即createrepo  /var/yum(安裝包在/var/yum/Server裏面,注意生成的目錄repo與安裝包所在目錄在同一階級因此此處createrepo後面加的目錄是/varmyum)這時會在/var/yum下生成一個repodata的目錄,裏面有四個文件,則表示新建源目錄成功。

配置yum源,即在/etc/yum.repos.d/rhel-debuginfo.repo文件裏,加入指向本地yum源的配置信息。

[文件名(隨便起,一個標識而已)]

name=local_軟件名   (僅是標識)

baseurl=file://《這兩斜槓是file的格式》本地路徑(/var/yumServer/repodata/的上級目錄。)

enabled=1   (是否啓用這個YUM下載源,1啓用,0不啓用)

gpgcheck=0    (安裝前是否檢測rpm包的數字簽字) 

這是本地yum源的配置!

 

 

開始執行,yum一系列命令。eg:    yum  install    軟件名1   軟件2

        eg:yum  install   mysql*    不要寫成yum  install  mysql 由於這樣這會只安裝mysql而不安裝別的!

 

66.kernel+modules(模塊,例如8139網卡模塊)構成內核空間,內核空間之上提供API接口,內核空間外有glibsc++c庫)也提供提供有API接口。這些API接口給APP提供與內核交流的窗口。Kernel須要時能夠加載各類模塊。全部的模塊都在 Pb/medules/內核版本號(以它命名)/  裏面。

內核空間下面是硬件:CPUPCI.IDE  CPU經過機器代碼與kernel溝通

67.內核版本目前只有2.4,2.4至關於linux內核的20歲生日在此以前,linux只是一個玩具上不了檯面)2.55奇數表示是測試版本),2.66偶數穩定版本)

查看kernel版本,ll   /boot7mlinuz-2.6.9-22.EL (2.6表穩定,9表示2.6的第6個版本,此處奇偶數不表明是否穩定,-22表示第22次修訂,EL表示由紅帽修改過不是原官方,不一樣公司修改的此處不同)。另外,一個公司的實力就是看他在內核上的造詣!!!

68.liunx最大的特色:一切皆是文件!!!

Eg: tty 控制檯,在linux ll  /dev/tty?  可查看所有    echo AA  > tty2 ,你能夠用alt+F2 (在x-windows下用 ctrl+alt+F2),切換到tty2控制檯下,會發現顯示AA.。緣由就是:一切皆文件!!!

69.pts/0 1 2  表示在x-windows下打開的終端!!!

70.WL的一個區別:Lx-windows是一個軟件無關緊要,而Wwindows是在內核空間裏的。因此W的圖形界面比L的流暢。

Startx 啓動x-windowsstartx□--□1啓動第二個x-windows(即tty8

whoami   who is he   w  從左到右一個比一個詳細顯示登陸信息!! !

71.php數組的鍵名最好用單引號,這樣能夠避免一些特殊字符生效!固然有時候必須用到雙引號,固然直接用雙引號!!

72.你敢信!!linux字符界面有複製粘貼功能!!!

RedHat 安裝後每次啓動時都會自動運行一個叫gpm的程序該程序運行後就能夠用鼠標來拷貝與粘貼了具體作法是按住鼠標左鍵拖動使要拷貝的地方反白這時反白的區域已經被拷貝再按鼠標右鍵拷貝的內容就會被粘貼在光標所在位置了。

73.給進入單用戶時加上密碼(在那個紅色的背景下,按ec都沒反應除非按p而後輸入密碼,正確後纔可進入單用戶!!!):/boot/grup/grup.conf裏面,title以前加上一句password +密碼  但此時是明文,容易被偷窺!!!這是須要用密文密碼即password  --md5 +密文

如何把明文密碼轉換爲密文。輸入grub-md5-crypt  這時回提示輸入密碼,轉換好之後,在vi插入模式下,粘貼便可!!!

74.echo -e   "\033[0;34m"   (30~37表明不一樣顏色)這僅僅是臨時修改,想要永久請vim   ~/.bashrc   本身修改下本身的用戶環境變量就行了!!!由於每一個人的口味都不一樣!

75.#init   n    切換運行級別(runlevel 查看當前運行級別),好比當前是init 5而後運行init 3 。則系統進行的操做是。查看init  3  的文件,即/etc/rc.d/rc3.d裏面的全部K***S***。若是發現有K***的服務,在運行則運行K***  stop 來關閉服務。若果發現有S***開頭的服務關閉,則運行S***  start 來開啓這個服務。

開機啓動時也是根據相應的運行級別,查看相應的/etc/rc.d/rcN.d 來開啓關閉服務!!

/etc/rc.d/rcN.d裏面的文件則是經過chkconfig來設置!!!eg:chkconfig  sshd ogg

/etc/rc.d/rcN.d裏面只有K**sshd 這個文件!!從這也能夠看出chkconfig能夠設置開機啓動某服務,就是經過控制/etc/rc.d/rcN.d來實現的!(詳見鳥哥)

/etc/inittab配置文件裏,有x:5:respawn:/erc/xll/prefdm  這句的意思是在5的運行級別下以respawn方式(用respawn方式調用子進程。即當前進程不停下來,並且實時監控着子進程,若是子進程死了或者結束了,再左右起來他,無限春哥懂了吧

)運行圖形界面!!因此5才表明圖形界面!

76.URL構成協議名://地址:端口/資源名  協議有:http,,ftp,,https(加密的安全http協議,好比銀行的網站採用的協議都是https協議)

77.不管是C/S仍是B/Sphp都是做用S,即服務端的語言!!!

78.substr取部份字符串。(這個屌絲函數start參數爲復負數時表示從結尾處開始!)

語法:string substr(string string, int start, int [length]);

返回值:字符串

內容說明

本函數將字符串 string 的第 start 位起的字符串取出 length (取出個數)個字符。若 start 爲負數,則從字符串尾端算起。若可省略的參數 length 存在(若省略則表示一直取到結尾),但爲負數,則表示取到倒數第 length 個字符。 

使用範例<?

echo substr("abcdef", 1, 3); // 返回 "bcd"

echo substr("abcdef", -2); // 返回 "ef"

echo substr("abcdef", -3, 1); // 返回 "d"

echo substr("abcdef", 1, -1); // 返回 "bcde"

?>

79.HTML裏面一個表單只能被提交一次!!!由於,正常狀況下表單第一次從頁面傳過來後,php立馬開始執行,執行完以後就結束了。因此一個表單只能提交一次。固然能夠本身設定,等待屢次輸入,輸入完後一次性處理!

80.bash的環境配置文件有四個:/etc/profile  /etc/bashrc   ~/.bash_profile   

~/.bashrc   profile文件和bashrc文件在啓動login  shell(即取得shell時須要完整的登錄流程)時纔會讀取。non-login  shell 只讀取bashrc文件。

81.PHPmysql的運用:

mysql創建鏈接和選擇數據庫。

  $link=Mysql_connect(「ip」,」user_name」,」password」)  (該函數會有一個返回值(狀態),能夠判斷是否創建鏈接成功。)

   mysql_selectdb(「databanse_name」)  (選擇數據庫)

     

 一般咱們把數據庫的連與選擇放在一個php裏面,而後別的php能夠直接引用即  require」php_nme」

includerequire的區別

    require 的使用方法如 require("MyRequireFile.php"); 。這個函數一般放在 PHP 程序的最前面,PHP 程序在執行前,就會先讀入 require 所指定引入的文件,使它變成 PHP 程序網頁的一部份。經常使用的函數,亦能夠這個方法將它引入網頁中。

    include 使用方法如 include("MyIncludeFile.php"); 。這個函數通常是放在流程控制的處理部分中。PHP 程序網頁在讀到 include 的文件時,纔將它讀進來。這種方式,能夠把程序執行時的流程簡單化。

    include()require()的功能也基本相同(包含),但在用法上也有一些不一樣,include()是有條件包含函數,而require()則是無條件包含函數。例如在下面代碼中,若是變量$a爲真,則將包含文件a.php

if($a){

   include("a.php");

}

require()則和include()不一樣,無論$a取何值,下面的代碼將把文件a.php包含進文件裏:

if($a){

   require("a.php");

}

require一個文件存在錯誤的話,那麼程序就會中斷執行了,並顯示致命錯誤

include一個文件存在錯誤的話,那麼程序不會中端,而是繼續執行,並顯示一個警告錯誤。

② php盡情操做數據庫

mysql_query(「sql語句」)   或者$var=」sql語句」  mysql_query($var)   

對在php中來講全部的sql語句能夠分爲兩種即①select語句select語句

由於 select語句返回的是一個結果集!!!

所以有專門操做結果集的函數,用來對結果集進行篩選從而選出用戶所需數據。

Eg: $result=mysql_query($sql);($result 保存結果集)

  $rows=mysql_num_rows($result);   

   mysql_fetch_assoc() 函數,返回關聯數組即保存鍵值對不變。

   mysql_fetch_row() 函數,返回索引數組即保存鍵變成0-n

   mysql_fetch_array()函數,返回索引和關聯數組即輸出兩遍!!

 

切記!→_→mysql_close()關閉數據庫,無參數時默認關閉當前打開數據庫!

還有mysql_free_result($result)釋放掉查詢的結果集!!!!

 

 

82.建立表時,最好寫成create table  if not exists table_name 這個若是不存在很神啊

一樣刪除時:drop  table   if  exists  table_nsme 若是存在則刪除,很神!

83.php{},是一個好用的定界符!!

eg:$a=wee    echo  "ddd{$a}gggg"  能夠區分變量名與通常字符!

84.  .  *.sh  點,空格加路徑執行sh,是在當前sh下執行不在另開一個bash.

85.linux下定義變量,僅在當前bash裏有效。若是加上export (聲明爲全局變量)則該變量會在該 bash 如下的子bash也也生效。

 記住一個習慣:*.sh裏定義變量了,在sh的最後必定要加上unset  變量名。來取消定義的變量這樣保證不會出錯。unset也能夠取消定義的函數!

若是腳本里面不加#!/bin/bash  且運行時不指定shell ,回報錯運行不了。由於沒指定演員(shell類型),戲(你寫的腳本)是唱不了的!!!

86.

[□ □]是條件判斷式,判斷真假。[  -z  abc  ]文件存在(或數值爲空)時返回ture

[   -n  abc  ]文件存在或數值不爲空時返回ture.

另外用[  ]判斷式時,記得給變量加上雙引號。

Eg: AA=pgrep httpd   (AA=6012  6013  6014  6015  6016)

[  -z  $AA  ] 時判斷式爲[  -z  6012  6013  6014  6015  ]由於空格表示結束 因此會只判斷6012  其餘數值不判斷。So、、就報錯了。

應寫成[  -z  「$AA」  ] 這樣式子就爲[  -z  「6012  6013  6014  6015 」]這樣就不會出錯

 

#/bin/bash  規定執行腳本所用的shell類型爲bash。由於linux環境變量裏可能沒規定shell.

For ... Do......done兩種運用:固定循環數值處理

各有各的妙處固定循環。

#/bin/bash

AA=`pgrep httpd` //` ` 反引號,優先執行反引號裏面的命令把命令結果放到反引號的位置。

For   aa   in  $AA

do     

      kill  -9  aa  //aa得值爲6012  ~  6016

done     //關掉一切http服務!!

數值處理

for ((初始值限制值執行步長))

 

 seq 1  100  該命令是生成100個數

 For  aa  in `seq 1   100`

  Do 

      $sum=$[ $sum+aa] //1+2+3+...+100

Done

 $[表達式]$((表達式)) 兩種表示該運算爲數值運算!!!

do   while   與 do  until   格式相同!!!但判斷條件相反!!! 

87.awk  -F : ‘{ printf   「\n」  $1}’  //表示用 作分隔符  不寫時默認用空格

Print 的衆多參數在此用雙引號,括起來纔會生效!!!! 

$0表示一行!!!$1~$n表示第n列!!!!

  sed  -e  '動做'   文件  動做必定要用單引號括起來!!

eg  : set  's/root/love/g'  /etc/passwd  /etc/passwd裏面的root都換成love.在,僅在屏幕上輸出改動結果,文件自己不變!

還能夠在參數前加上要匹配的正則表達式,到必須加/  /好比>3<  sed  '/∧#/d'  文件名,即刪除文件中以#開頭的文件!!!

正則表達式中\<a,表示以a開頭的字符串,a\>表示以a結尾的字符串!!!

88.~終於吃虧了,下次要記得裝什麼軟件最好在/var或者/opt目錄下建一個已軟件名命名的文件夾!便於之後的查找與維護!!!

89.IP地址的A類開頭00~127),B類開頭10128~191),C類開頭110192~223),D:開頭是1110  224.0.0.0~239.255.255.255  D類地址是組播,廣播,多播地址! E:開頭是1111  240.0.0.0~255.255.255.255   E類地址是留做實驗用的。

D類與E類不用做標識網絡接口!因此,也就沒有NetidHostid

90.linux/etc/sysconfig/i18n文件中的僅有的一行LANG="zh_CN.UTF-8"控制系統語系,

zh_CN.UTF-8表示是中文界面,en_US.UTF-8表示英文界面。

91.LINUX  $()等於反引號`  ${  變量命 },僅僅是引用變量,{}是定界符! 

length=${#變量命}測變量值長度,並返回還值!

92。 提示出現錯誤:傳輸(VMDB)錯誤-44:Message.The VMware Authorization Service未運行。就運行services.msc(打開服務控制檯)開啓VMware Authorization服務既可!

93.作服務器機器的硬盤接口最好用SCSI接口,且讀取達到1w5!儘管SATA便宜但最好別用,由於SATA太慢(通常7200/分),PC上主流用SATA,它幹掉了IDE

硬盤接口是硬盤與主機系統間的鏈接部件,做用是在硬盤緩存和主機內存之間傳輸數據。不一樣的硬盤接口決定着硬盤與計算機之間的鏈接速度,在整個系統中,硬盤接口的優劣直接影響着程序運行快慢和系統性能好壞。

94cd -  能夠在當前和上個命令之間切換!  賒——賒帳

95mv  源文件   目標文件  能夠爲文件重命名,mv的特性是移動時不加文件命則保持原名,若加有新名字則爲新名字!

96。爲了數據庫的安全,最好別用root帳號,不安全。應該:grant  all  to  user_name@localhost(或者%(表任意地方).locathost表示僅本地主機可連) on db_name.table_name  identified  by  'password'  這個語句意思是:建立一個用戶,規定它在哪能夠登錄,設置登錄密碼及登錄後可操做的數據庫和表(可選)

97VFS是一個異構文件系統之上的軟件粘合層(注:有時也把VFS稱爲可堆疊的文件系統(Stackable Filesystem),由於VFS能夠無縫地使用多個不一樣類型的文件系統,就像把多個文件系統堆疊在一塊兒同樣,故而得名)。經過VFS,能夠爲訪問文件系統的系統調用提供一個統一的抽象接口。

文件系統是對一個存儲設備上的數據和元數據進行組織的機制。這種機制有利於用戶和操做系統的交互

根文件系統首先是一種文件系統,該文件系統不只具備普通文件系統的存儲數據文件的功能,可是相對於普通的文件系統,它的特殊之處在於,它是內核啓動時所掛載(mount)的第一個文件系統,內核代碼的映像文件保存在根文件系統中,系統引導啓動程序會在根文件系統掛載以後從中把一些初始化腳本(如rcS,inittab)和服務加載到內存中去運行

根文件系統之因此在前面加一個」根「,說明它是加載其它文件系統的」根「,既然是根的話,那麼若是沒有這個根,其它的文件系統也就沒有辦法進行加載的。它包含系統引導和使其餘文件系統得以掛載(mount)所必要的文件。根文件系統包括Linux啓動時所必須的目錄和關鍵性的文件,例如Linux啓動時都須要有init目錄下的相關文件,在 Linux掛載分區時Linux必定會找/etc/fstab這個掛載文件等,根文件系統中還包括了許多的應用程序bin目錄等,任何包括這些Linux 系統啓動所必須的文件均可以成爲根文件系統。

Linux啓動時,第一個必須掛載的是根文件系統;若系統不能從指定設備上掛載根文件系統,則系統會出錯而退出啓動。成功以後能夠自動或手動掛載其餘的文件系統。所以,一個系統中能夠同時存在不一樣的文件系統。

在 Linux 中將一個文件系統與一個存儲設備關聯起來的過程稱爲掛載(mount)。使用 mount 命令將一個文件系統附着到當前文件系統層次結構中(根)。在執行掛裝時,要提供文件系統類型、文件系統和一個掛裝點。根文件系統被掛載到根目錄下「/」上後,在根目錄下就有根文件系統的各個目錄,文件:/bin /sbin /mnt等,再將其餘分區掛接到/mnt目錄上,/mnt目錄下就有這個分區的各個目錄,文件

98.鍵盤右上角第三個燈亮了,就表示你他孃的無心間按到ctrl--s了,屏幕被鎖了。請再按ctrl--q恢復!

99.word,27,而後選擇7。打開字體——選擇上標。便可打出漂亮的27次方。

100.PPT——右鍵——背景——填充效果——鎖定圖片縱橫比——便可保持圖片的原樣了!!!

101.字符>是一個輔助提示符,由shell給出,意思是但願用戶鍵入更多的信息已完成命令行的輸入。

shell提供的特殊字符叫作元字符。

shell元字符

>     prog>文件  將標準輸出重定向到文件

>>    prog>>文件   將標準輸出附加到文件

<     prog<文件   從文件file中獲取標準輸入

|     p1|p2p1的標準輸出做爲p2的標準輸入

<<串  here  document:標準輸入從here  document  讀入,直到出現串

*      匹配文件名中的零個或多個字符

?      匹配文件名的任何單個字符

{ccc}    匹配文件名中ccc範圍內任何字符,如0-9a-z都是合法的

;       命令結束符。例如p1;p2表示先執行p1,再運行p2

&       與;相似,但不等p1結束。即把p1放在後臺運行——

`xxx`    運行xxx中的命令;輸出結果代替`xxx`即優先執行。

(xxx)    在子shell裏運行xxx中的命令

{xxx}    在當前shell中運行xxx中的命令(不多使用)

$1$2等  $0——$9可表明shell文件的參數。但$0表明執行文件自己。

$變量    shell變量的值

${變量}   變量的值:爲避免在文本鏈接時混淆,使用{}作定界符。

 

\    \CC字符做爲字符(即轉義字符),但\後面加換行符無效

’xxx’   xxx表示文字,單引號中,一切特殊字符失效——

"xxx"   xxx中的$'xxx'\獲得解釋後(即雙引號中特殊字符有效),將xxx做爲文本文字

#       表示註釋的開始

變量 值    爲變量賦值

p1&&p2    運行p1;若成功,再運行p2

p1||p2      運行p1;若不成功,在運行p2

102.php在類中引用成員是必須用this指針即:$this->$var_name

103.左上角WPS的小三角–––工具–––字數統計。便可知道字數。

104。作web的好的素材網站:①三劍客素材 素材中國

105。電腦四根跳線:一根重啓(復位/重啓開關:RESET SW  英文全稱:Reset Swicth ),一根開關機(電源開關:POWER SW  英文全稱:Power Swicth ),一根電源信號燈(電源指示燈:+/-可能用名:POWER LEDPLEDPWR LEDSYS LED等 ),一根硬盤指示燈(硬盤狀態指示燈:HDD LED 英文全稱:Hard disk drive light emitting diode可能用名:HD LED )

跳線的做用是實現兩個針短接,產生信號,進行相應操做。(無跳線也可用螺絲刀接觸,實現短接)

106.GHO的鏡像都是盜版系統。

107。一個團隊的凝聚力的基礎是你們都有責任感。即領導要少,這麼每一個人都有一份主人感,責任感,纔會付出,纔會有凝聚力。

108$a=array('1','1')

foreach($a  as  $k =>  $v){ $v= 3}

沒法修改數組的值。由於foreach是把數組的鍵,值都複製一份分別賦給變量kv即至關於值傳遞。

$a  as  $k  => &$v  能夠修改由於是地址傳遞。

或者{$a[$k]=6 }也能夠修改,這是直接對自己操做。

foreach語言結構操做的是數組的一個拷貝。

109PHP數組是關聯數組,按出現的前後順序輸出,不按鍵的大小輸出。

120.skill  -9  pts/2可殺死某個已登錄的終端.

121.你們都知道,要修改Linux系統的DNS服務器,只須要編輯/etc/resolv.conf文件便可。然而在Ubuntu 12.04裏面,打開這個文件後,雖然能夠看到配置信息,可是同時也看到了文件頭裏醒目的兩行註釋:

#Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

大意是這個文件是由resolvconf程序進行動態生成的,請不要手動修改,修改的信息將會被覆蓋。這到底是怎麼回事呢?

首先固然是不死心了,往裏面添加了本身的DNS服務器地址後保存退出,發現能生效。看上去彷佛沒有什麼問題了。

然而,在重啓後,我添加的信息果真沒有了!被系統自動覆蓋了。

可是我真的很須要本身配置DNS服務器,Ubuntu Desktop版中能夠藉助圖形界面的工具,進行手動配置,這個沒有什麼問題。可是對於Ubuntu Server版來講,沒有圖形工具了,必需要本身修改文件進行配置才行,這下這個文件每次啓動後都會被覆蓋了,要怎麼樣才能讓我本身的DNS服務器信息能保存到系統裏呢?

網上搜索了一下,發現瞭解決辦法,原來只須要往resolvconf這個程序的目錄裏寫入一個新配置文件就能夠解決。讓咱們一塊兒看看怎麼樣在Ubuntu 12.04 LTS Server版中配置本身的DNS服務器吧!

首先咱們須要建立一個文件/etc/resolvconf/resolv.conf.d/tail

#vim /etc/resolvconf/resolv.conf.d/tail

而後咱們在這個文件裏寫入本身要添加的DNS服務器,格式與之前的/etc/resolv.conf文件一致:

nameserver 8.8.8.8

nameserver 8.8.4.4

而後輸入wq保存退出。接下來咱們重啓下resolvconf程序,讓配置生效:

#/etc/init.d/resolvconf restart

再去看看/etc/resolv.conf文件,本身添加的DNS服務器果真乖乖的寫進去了!至此問題完美解決!//牛逼。

122RHEL––>Red  Hat  Enterprise  Linux

123。數據庫的設計——不能爲了實現某些功能來扭曲了,一個事物的本質。

124.AnacondaRed Hat Enterprise Linux的安裝程序!

125.RHEL/etc/passwd目錄中的主目錄字段,是用戶登錄成功後進入的目錄,若是沒有指明該目錄則用戶登錄後會進去/根目錄。

解決方法:cp  -r  /etc/skel  ~/nsme便可

/etc/skel目錄是用戶主目錄的模板。

126.shbash的區別

1. sh通常設成bash的軟鏈

[work@zjm-testing-app46 cy]$ ll /bin/sh

lrwxrwxrwx 1 root root 4 Nov 13 2006 /bin/sh -> bash

2. 在通常的linux系統當中(如redhat),使用sh調用執行腳本至關於打開了bashPOSIX標準模式

3. 也就是說 /bin/sh 至關於 /bin/bash --posix

因此,shbash的區別,實際上就是bash有沒有開啓posix模式的區別.

還有一點若是/etc/passwd中用戶的默認shell/bin/sh而不是/bin/bash則提示符會出錯,並且不管怎麼修改PS1都不起做用。

127.雖然說linux下沒有後綴這個概念,可是你編程時不用.c作後綴試試!←_←

128.resolv.conf的關鍵字主要有四個,分別是:

nameserver    //定義DNS服務器的IP地址

domain       //定義本地域名

search        //定義域名的搜索列表

sortlist        //對返回的域名進行排序

下面咱們給出一個/etc/resolv.conf的示例:

domain  51osos.com

search  www.51osos.com  51osos.com

nameserver 202.102.192.68

nameserver 202.102.192.69

最主要是nameserver關鍵字,若是沒指定nameserver就找不到DNS服務器,其它關鍵字是可選的。

nameserver表示解析域名時使用該地址指定的主機爲域名服務器。其中域名服務器是按照文件中出現的順序來查詢的,且只有當第一個nameserver沒有反應時才查詢下面的nameserver

domain   聲明主機的域名。不少程序用到它,如郵件系統;當爲沒有域名的主機進行DNS查詢時,也要用到。若是沒有域名,主機名將被使用,刪除全部在第一個點( .)前面的內容。

search   它的多個參數指明域名查詢順序。當要查詢沒有域名的主機,主機將在由search聲明的域中分別查找。

domainsearch不能共存;若是同時存在,後面出現的將會被使用。

sortlist  容許將獲得域名結果進行特定的排序。它的參數爲網絡/掩碼對,容許任意的排列順序。

129.rpm  -ql  soft_name  可查詢軟件的安裝位置。

130.掛載——mount   -o   MOUNT_OPTIONS指定掛載參數掛載。

mount -o  remonunt,MONUT_OPTIONS在不卸載的狀況下修改掛載參數。//請注意格式。

 

131.配置磁盤配額

修改文件系統的掛載參數

mount  -o  remonut,  usrquota,grpquota,rw  /dev/sda2  /mnt/tmp

usrquota:啓用對用戶的磁盤配額功能

grpquota:啓用對組羣的磁盤配額功能

初始化磁盤配額數據庫

quotacheck  -c  -u  -g  /dev/sda2

c:新建磁盤配額數據庫

u,g:創建或更新aquota.user/aquota.group

啓用與停用磁盤配額

quotaon  -p查看磁盤配額啓動狀態

quotaon/quotaoff  /dev/sda啓動/關閉磁盤配額

設置磁盤配額

edquota  -u  user_name  //進入一個相似vi的編譯環境

全部啓動磁盤配額的磁盤都對該用戶約束。

132.你要讓別人以爲你有價值,你才能被人看重!2014-6-13

我,王亞彬,終將亮瞎大家。

133.英語中專有名詞首字母都大寫。像什麼:Internet表示因特網,Ethernet表示以太網。

134.路由器轉發數據的步驟:

H1爲源主機H2爲目的主機

判斷H1H2是否在同一網絡。

即把H2ip地址與H1的子網掩碼就行與運算,得出一個網絡號,判斷該網絡號是否與H1的網絡號相同。若相同則不通過路由器轉發,若不相同則交給H1的默認路由來處理。

路由器把收到分組後,就在其路由表中逐行尋找有無匹配的網絡地址。

即從第一行起,把每行的子網掩碼和收到的分組的目的地址就行 與 運算,獲得一個網絡號NETID,而後拿NETID和路由表中的該行的目的網絡號比較,若相同則把分組交給對應的下一跳接口;若不一樣則重複步驟。

135.要

             鍛鍊

  本身

             的

  表達能力!----2014-7-13

136.出現下面問題請不要蛋疼,這是由於你的network自己已經啓動,你在start  就會報錯,好比你換了你在/etc/sysconfig/network-scripts/ifcfg-eth0 許多ip它都會報錯說,the  ip addr  is

existsing .出現這樣錯誤請淡定,請直接 service  network  restart .

還有可能也會出現UUID重複的錯誤,請在/etc/sysconfig/network-scripts/ifcfg-eth0直接註釋掉他就好了。

相關文章
相關標籤/搜索