码迷,mamicode.com
首页 > 其他好文 > 详细

网管杂记

时间:2014-07-15 08:57:40      阅读:480      评论:0      收藏:0      [点我收藏+]

标签:des   style   http   color   使用   文件   

1.电脑输入法失效。cmd––>mon可找回输入法!

2.c++.面向对象,c语言面向过程。

3.Ctrl+Alt+Del热启动!!无加电自检!!

4.Linux––>partx  设备名   重新读取磁盘的分区表!它若不举,便用partprobe

5.linux服务器失败时时,可用netstat –l命令来查看服务器端口是否在开启!

6.linux的主机名,千万别用hostname这个傻逼命令乱改主机名,要改必须三个地方都改,不然做服务器时会出现下面的错误getaddrinfo:localhost  Name  or service not  known.

拯救方法如下,保证三处一致,即环境变量,本地文件(内),网络文件(外)

1hostnmae  newnameecho  $HOSTNAME显示当前名字 (环境变量,最后改下)

2vim   /etc/hosts          修改 本机ip (见44条)  newname    (主机名,户口本)

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直接注释掉他就行了。

网管杂记,布布扣,bubuko.com

网管杂记

标签:des   style   http   color   使用   文件   

原文地址:http://www.cnblogs.com/anythig-is-possible/p/3841576.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!