1.目录切换
cd(change directory)切换目录。
cd /:回到根目录
cd ..:回到上一级目录
cd ~:回到家目录,Root用户登录下回到/root文件夹.普通用户,回到/home文件夹。
cd回车:同上,回到家目录。
cd - :意思是返回到上次的目录,类似windows返回 ;
cd 文件路径
绝对路径:完整路径,从/根目录开始。
相对路径:相对于当前路径的不完整路径,可以省略前面的当前路径。
当前路径+相对路径=绝对路径(完整路径)
2.ls命令
pwd:查看当前所处的路径
cmd --help/man cmd:查看命令的帮助手册
ls:查看当前路径下所有的文件
ls -l:列表形式显示文件夹,等于ll。
ls -a:全部的文件,包含显示隐藏文件夹/文件
3.文件文件夹(目录)管理
3.1 mkdir创建文件夹(目录)
mkdir(make directory)
mkdir a b c d # 当前路径下并列建了abcd 4个空文件夹
mkdir -p a/b/c/d # 当前路径下层级建了abcd 4个空文件夹
-p:建立目录时建立其所有不存在的父目录。
-m
3.2 rmdir删除文件夹(目录)
rmdir a b c d # 当前路径下并列删除abcd 4个空文件夹
rmdir -p a/b/c/d # 当前路径下层级删除abcd 4个空文件夹
3.3 删除文件/文件夹
rm(remove)删除文件或目录。
#删除整个a文件夹包括下面的子文件或者子文件夹
rm -rf a
-f或--force:强制删除文件或目录。
-r或-R或--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。
# 删除yum.log文件
rm a/b/c/d/yum.log
3.4 cp(copy)复制
# 拷贝整个a文件夹以及文件夹下的子文件到/home
cp -r a /home
-r或-R或--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。
# 拷贝/tmp/yum.log到/tmp/a/b/c文件夹
cp /tmp/yum.log /tmp/a/b/c
3.5 mv(move)剪切
可以用来重命名
mv /tmp/a/b/c/yum.log /tmp/a
mv /tmp/a /home
3.6 touch创建文件
touch file.txt新建一个file.txt的空文件(touch a/b/c/d/file.txt)
3.7 vi编辑器
vi 已存在文件:打开这个已存在文件
vi 不存在的文件:新建一个文件并打开
按下字母i:进入编辑模式,vi编辑器左下角是--INSERT--
输入我们需要写的内容
按下ESC:退出编辑模式,vi编辑器左下角INSERT消失
输入指令:
wq:w保存,q离开。
q!:不保存离开。
按下回车,退出vi编辑器
3.8 cat命令
cat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。
cat 参数 fileName
参数:
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-E 或 --show-ends : 在每行结束处显示 $。
# 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:
cat -n textfile1 > textfile2
# 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:
cat -b textfile1 textfile2 >> textfile3
# 清空 /etc/test.txt 文档内容:
cat /dev/null > /etc/test.txt
3.9文件查看
3.9.1 more往下翻页显示文档内容
more filename
按ENTER增加显示一行
ctrl+z终止命令,回到命令行
3.9.2 less分页显示文档内容
less /etc/httpd/conf/httpd.conf
往下翻页按PageDown,往上翻页按PageUp
3.9.3 head显示文档头几行内容
head /etc/httpd/conf/httpd.conf(不带数字默认显示头10行)
head -n /etc/httpd/conf/httpd.conf(带数字显示头n行,n为任意数字)
3.9.4 tail显示文档末几行内容
tail /etc/httpd/conf/httpd.conf(不带数字默认显示末10行)
tail -n /etc/httpd/conf/httpd.conf(带数字显示末n行,n为任意数字)
3.10 文件权限管理
3.10.1文件属性说明

3.10.2 更该文件属性
3.10.2.1chgrp更改文件属组
chgrp [-R] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
3.10.2.2 chown更改文件属主/属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
3.10.2.3 chmod更改文件权限
chmod [-R] abc 文件或目录
参数说明
-R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更
a:代表文件拥有者(owner)的权限,数值0~7
b:代表文件拥有者同组用户(group )的权限,数值0~7
c:代表其它用户(others)的权限,数值0~7
权限数字说明:
r:读权限,数值为4
w:写权限,数值为2
x:执行权限,数值为1
3.11文件压缩/解压缩
3.11.1 gzip
gzip 命令只能用来压缩文件,不能压缩目录,即便指定了目录,也只能压缩目录内的所有文件。
gzip [选项] 源文件
-c:将压缩数据输出到标准输出中,并保留源文件。
-d:对压缩文件进行解压缩。
-r:递归压缩指定目录下以及子目录下的所有文件。
-v:对于每个压缩和解压缩的文件,显示相应的文件名和压缩比。
-l:对每一个压缩文件,显示字段:压缩文件的大小、未压缩文件的大小、压缩比、未压缩文件的名称。
-数字:用于指定压缩等级,-1 压缩等级最低,压缩比最差;-9 压缩比最高。默认压缩比是 -6
# gzip文件压缩test.sh-》test.sh.gz
gzip test.sh
# gzip文件解压缩test.sh.gz-》test.sh
gzip -d test.sh.gz
-d或--decompress或----uncompress:解开压缩文件。
3.11.2 zip/unzip
#压缩文件,要压缩的文件文件名是最后一个参数
zip filename.zip filename
# 压缩文件夹,-r:层级压缩。
zip -r filename.zip filedir
# 解压缩,-d:指定解压缩目录,不指定解压至当前文件夹。
unzip filename.zip -d filedir
3.11 tar文件备份/还原
tar -cvf [包名,*.tar结尾] [文件,多个用空格隔开]
-c或--create 建立新的备份文件,文件后缀为*.bar。
-v或--verbose 显示指令执行过程。
-f<备份文件>或--file=<备份文件> 指定备份文件。
-z备份同时压缩文件,文件后缀为*.bar.gz。
-x文件还原,一般不与c共用。
# 文件备份
tar -cvf bak.tar dir file2.txt file.txt test.sh
#文件还原
tar -xvf bak.tar
# 文件备份后用gzip压缩
tar -zcvf bak.tar.gz dir file2.txt file.txt test.sh
#压缩备份文件还原。先解压,再还原。
gzip -d bak.tar.gz
tar -xvf bak.tar
4.用户管理
4.1 useradd建立用户帐号
useradd 选项 用户名
参数说明:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
# 新建了一个用户gem,该用户的登录Shell是 /bin/sh。
# 它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
useradd -s /bin/sh -g group –G adm,root gem
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等
4.2 userdel用户删除
userdel 选项 用户名
参数
-r:作用是把用户的主目录一起删除
4.3 修改用户
usermod 选项 用户名
参数:
与useradd相同
4.4 用户口令的管理
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令
passwd 选项 用户名
默认用户名修改当前用户口令。
参数说明:
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。
4.5 su(super user)切换登录用户
su username
5.用户组管理
5.1 groupadd创建用户组
groupadd 选项 用户组
参数说明:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
5.2 groupdel删除用户组
groupdel 用户组
5.3 groupmod修改用户组
groupmod 选项 用户组
参数:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
#此命令将组group2的标识号改为10000,组名修改为group3
groupmod –g 10000 -n group3 group2
5.4 切换用户组
如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。
newgrp 用户组
5.5 groups显示当前用户所在的组
6.服务器命令
service httpd start启动apache(浏览器输入localhost)
service httpd stop停止apache
service httpd restart重启apache(apapche开启状态下)
service httpd status查看服务状态
7.系统管理
7.1 ps进程查看
ps(process status)报告程序状况
ps -ef查看所有进程
ps -ef|grep user1 查看关于user1的进程
7.2 kill杀死进程
kill -9 pid(进程标识符)
kill -9 pid1 pid2 pid3(同时杀死进程)
7.3 top动态的监控进程所占系统的资源
主要看哪个进程占用CPU,内存比较多
7.4 free查看内存使用状况
7.5 netstat查看网络状态
netstat -an查看正在被使用的端口号
7.6 reboot系统重启
一般不用。
7.7 shutdown 系统关机指令
shutdown -r now(立即重启)
shutdown -r 10(10分钟后自动重启,root用户使用)
shutdown -r 20:35(20:35重启)
shutdown -h now(立即关机)
shutdown -h 10
shutdown -h 20:35(20:35关机)
shutdown -h 20:35
shutdown -c取消shutdown(在文件中的打开上再次打开一个链接,输入shutdown -c)
8.磁盘管理
8.1 df 查看磁盘空间
df -h
-h:以可读性较高的方式来显示信息
8.2 du 显示目录或文件的大小
参数:
-b或-bytes 显示目录或文件大小时,以byte为单位。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-k或--kilobytes 以1024 bytes为单位。
-m或--megabytes 以1MB为单位。
-s或--summarize 仅显示总计。
du -sm查看文件夹总的大小(M)
du -sk查看文件夹总的大小(k)
du -sh查看文件夹总的大小(灵活显示够m显示m)
du -h查看文件夹下每个文件夹的大小
FAQ
1.linux文件系统
Linux目录类似一个数,没有盘符的概念,**/**为根目录,下面有很多子目录:
/bin:存放二进制可执行文件,常用命令(ls,cat,mkdir等命令)一般都放在这里。
/etc:存放系统管理和配置文件。
/home:存放所有用户文件的根目录,是用户目录的基点。
/usr:存放系统的应用程序,比较重要的目录/usr/local本地系统管理员软件安装目录。
/opt:额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装在这里。
/proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录获取系统信息。
/root:系统管理员的主目录
/sbin:存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理员命令和程序。如ifconfig等。
/dev:用于存放设备文件
/mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/boot:用于存放用于系统引导时使用的各种文件
/lib:存放跟文件系统中的程序运行所需要的动态链接库及内核模块
/tmp:用于存放各种临时文件。
/var:用于存放运行时需要改变数据的文件
/lost+found:这个目录平时是空的,系统非正常关机而留下的文件就在这里。
2.链接数据库
(1)先确保Linux链接到网络。
(2)在启动数据库。
service mysqld start启动数据库mysql
service mysqld status查看数据库状态
(3)链接数据库。
mysql -u(用户) root -p(密码) 连接数据库(mysql用户名root,密码是空)
(4)退出链接
ctrl+z退出到命令行
(5)数据库服务停止/重启
service mysqld stop
service mysqld restart
3.安装VMTool
1)虚拟机--安装VMtool(CD/DVD,C:\Program Files\VMware\VMware Workstation\linux.iso)
2)进入linux操作系统,打开/media,里面放了VMtool安装包
cd /media
cd VMware\ Tools
cp VMwareTools-9.6.2-1688356.tar.gz /tmp
cd /tmp
chmod 777 VMwareTools-9.6.2-1688356.tar.gz
tar -zxvf VMwareTools-9.6.2-1688356.tar.gz
chmod -R 777 vmware-tools-distrib
cd vmware-tools-distrib
./vmware-install.pl
一路回车,安装过程有点慢
reboot
1.实现文件共享,跟本机共享
虚拟机-设置,选项-共享文件夹,勾选“在下次关机或挂起前一直启用”
添加-主机路径,选择任意一个本机的文件夹,确定
/mnt/hgfs里面就是共享的本机文件夹内容
2.实现跟本机的复制,粘贴
4.环境搭建与网页的发布
4.1环境搭建
1.linux安装(WEB服务器apache,数据库服务器mysql,应用服务器php)
2.启动服务apache, mysql
3.发布网页,通过FTP将网页上传到服务器上/tmp,再发布到的服务器的一个文件夹。
4.2静态网页
以web.html为例
用FTP上传网页文件到服务器/tmp目录
cd /tmp
service httpd start
打开linux里面的浏览器,网址输入http://localhost/
cp web.html /var/www/html
cd /var/www/html
chmod 777 web.html
打开发布的网页,将localhost换成本机的IP地址
http://localhost/web.html
http://172.31.84.114/web.html
关机防火墙(可以让其他用户访问这台电脑),系统-管理-防火墙,点击“禁用”再点“应用”,点击“是”
4.3动态网页
以ranzhi为例
通过FTP将ranzhi网页上传到服务器的/tmp目录下
cd /tmp
chmod 777 ranzhi.3.3.zip
unzip ranzhi.3.3.zip
cp -r ranzhi /var/www/html
cd /var/www/html
chmod -R 777 ranzhi
浏览器打开http://172.31.84.114/ranzhi/www/
4.4PHP应用服务器安装
yum install(上网下载并安装)
yum remove(卸载)
yum install php php-cli php-pdo php-mysql
如果出现yum locked的解决办法
ps -ef|grep yum
kill -9
service httpd restart
重新打开http://172.31.84.114/ranzhi/www/
service mysqld start
http://172.31.84.114/ranzhi/www/