010-56250565
 
学好PHP很有前途之二Linux的基础知识
2014-5-16 浏览:1705次 来源:北京网站建设

大家都知道吧,PHP的黄金搭档是谁吧?当然是LAMP了。

学习PHP当然要学一些这个LAMP了,所以首先我们要学一下Linux相关的基础知识吧,比如说日常的操作命令(不要说,有那些图形化的东西就不用记这些了,有些东西还是用命令省事的)。好吧,那这次就学一下Linux的常见命令。

1. man 对你熟悉或不熟悉的命令提供帮助解释eg:man ls 就可以查看ls相关的用法

2. ls 查看目录或者文件

3. cp 拷贝文件

4. rm 删除文件和目录

5. mv 移走目录或者改文件名

6. cd 改变当前目录 pwd 查看当前所在目录完整路径

7. cat,more命令将某个文件的内容显示出来。

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。

9. clear,date命令:clear:清屏,相当与DOS下的cls;date:显示当前时间。

10. mount 加载一个硬件设备

11. su 在不退出登陆的情况下,切换到另外一个人的身份

12.who am i,where is,which,id

//whoami:确认自己身份

//whereis:查询命令所在目录以及帮助文档所在目录

//which:查询该命令所在目录(类似whereis)

//id:打印出自己的UID以及GID。(UID: 用户身份为数不多标识。GID:用户组身份为数不多标识。每一个用户只能有一个为数不多的UID和 GID)

13. grep,find

grep: 文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索

eg: grep success *    /*查找当前目录下面所有文件里面含有success字符的文件

14. kill 可以杀死某个正在进行或者已经是dest状态的进程

15. passwd 可以设置口令

16. history 用户用过的命令

17. !! 执行较近一次的命令

18. mkdir命令

19. tar 解压命令

20. finger 可以让使用者查询一些其他使用者的资料

下面的是一些CentOS的操作命令集

一:查看cpu

more /proc/cpuinfo | grep "model name"
grep "model name" /proc/cpuinfo

如果觉得需要看的更加舒服

grep "model name" /proc/cpuinfo | cut -f2 -d:


二:查看内存

grep MemTotal /proc/meminfo

grep MemTotal /proc/meminfo | cut -f2 -d:

free -m |grep "Mem" | awk '{print $2}'

三:查看cpu是32位还是64位

查看CPU位数(32 or 64)

getconf LONG_BIT

四:查看当前linux的版本

more /etc/redhat-release
cat /etc/redhat-release

五:查看内核版本

uname -r

uname -a



六:查看当前时间

date

上面已经介绍如何同步时间了,

七:查看硬盘和分区

df -h

fdisk -l

也可以查看分区

du -sh

可以看到全部占用的空间

du /etc -sh

可以看到这个目录的大小

八:查看安装的软件包

查看系统安装的时候装的软件包

cat -n /root/install.log

more /root/install.log | wc -l

查看现在已经安装了那些软件包

rpm -qa

rpm -qa | wc -l

yum list installed | wc -l

不过很奇怪,我通过rpm,和yum这两种方式查询的安装软件包,数量并不一样。没有找到原因。


九:查看键盘布局

cat /etc/sysconfig/keyboard

cat /etc/sysconfig/keyboard | grep KEYTABLE | cut -f2 -d=

十:查看selinux情况

sestatus

sestatus | cut -f2 -d:

cat /etc/sysconfig/selinux

十一:查看ip,mac地址

在ifcfg-eth0 文件里你可以看到mac,网关等信息。

ifconfig

cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR

cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR | cut -f2 -d=

ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-

ifconfig   | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'

查看网关

cat /etc/sysconfig/network

查看dns

cat /etc/resolv.conf

十二:查看默认语言

echo $LANG $LANGUAGE

cat /etc/sysconfig/i18n

十三:查看所属时区和是否使用UTC时间

cat /etc/sysconfig/clock

十四:查看主机名

hostname

cat /etc/sysconfig/network

修改主机名就是修改这个文件,同时较好也把host文件也修改。


#查看开机运行时间

uptime

09:44:45 up 67 days, 23:32, ...

:-) ,看来刚才确实是网段的问题,我的机器还是67天前开机的。


#系统资源使用情况

vmstat 1 -S m

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b   swpd   free   buff cache   si   so    bi    bo   in   cs us sy id wa st
0 0      0    233    199    778    0    0     4    25    1    1 3 0 96 0 0
0 0      0    233    199    778    0    0     0     0 1029 856 13 1 86 0 0

这个还是专门分一片文章来描述吧


  • 2. 批量替换文件

今天使用svn进行系统迁移,结果发现较初的路径写错了,导致无法访问源服务器,查看 .svn/entries 大致了解了一下里面的内容。重新迁移时间太久了,还是直接把文件替换掉吧


for f in $(find ./ -type f -name 'entries')
do
   sed -i "s/202\.68\.134\.18/202\.68\.134\.34/g" $f
done


sed 简单说明:

sed "s/sourcestring/newstring/g" $f

把 $f 文件中的 sourcestring 换成 newstring,输出到终端。s 表示搜索替换,/g表示全局。

sed -i $f

表示直接在 $f 中修改。

sed -iback $f

表示修改后的文件另存为 $fback


sed 中所有正则表达式都必须使用严格的转义符 \ 来限定

sed 的正则比较严格: " \ / ! 都需要分别用 \" \/ \\ \! 转义。

\n 表示换行

  • 3. shell 变量 字符串操作

    mono 跑在linux下时,apache+mod_mono有时候需要加载的 Assembly 必须配置在 GAC 中,下面是一个脚本完成此功能

    cd bin

    for f in $(find ./ -name "*.dll")

    do

       gacutil -i $f

    done


    如果要从 GAC 中批量卸载这些 Assembly, 可以如下

    for f in $(ls *.dll)

    do

       gacutil -u ${f%%.dll}

    done


    其中就用到了字符串变量的替换, ${f%%.dll}

    ${f%%.dll} 的意义为 删除 $f 变量 .dll 及之后的所有内容

 
 
阅读下一篇
百度快照为什么会倒退?
 
 
延伸阅读
一诺签约北京执速保资产管理有限公司网站建设项目
一诺互联签约维亚帝电梯 塑造私人电梯品牌新高度
一诺互联签约晶毫新材料,展示官网新形象
一诺互联签约天府盛国际物流网站建设项目
一诺互联签约深圳前海枫富,打造中文官方网站建设项目
一诺互联三度签约中水华夏集团 承建中水华夏集团新官网
关于我公司2020春节后延期上班的通知
 
准备开展业务?
联系专业的商务顾问,诊查网站现状及关键词、分析竞争对手的流量、一对一咨询、及其报价详情