我们都知道吧,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,网关ip等信息内容。
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}'
查看网关ip
cat /etc/sysconfig/network
查看dns
cat /etc/resolv.conf
十二:查看默认设置语言表达
echo $LANG $LANGUAGE
cat /etc/sysconfig/i18n
十三:查看隶属时区时间和是不是应用UTC时长
cat /etc/sysconfig/clock
十四:查看IP地址
hostname
cat /etc/sysconfig/network
改动IP地址便是改动这一文件,与此同时不错也把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 及以后的全部内容