您现在的位置是:首页 >其他 >PHP面试宝典之Linux网站首页其他
PHP面试宝典之Linux
简介PHP面试宝典之Linux
fork()函数?
从一个已存在进程中创建一个子进程,并将父进程内部数据复制一份交给子进程;
返回值:子进程中执行返回0,父进程中执行返回子进程ID,创建失败返回-1
文件权限?
r:读,w:写,x:执行权限,十位,四组
第一组:一位:-表示普通文件,c表示字符设备,b表示
第二组:三位:用户权限u
第三组:三位:组权限g
第四组:三位:其他权限o
shell脚本?
文件以.sh结尾
执行方式:./ 文件名、bash 文件名、.文件名
修改权限:chmod +x
定义开头:#!/bin/sh
注释:#
输出:echo
php向shell传递参数:$1,$2,$3
shell向php传递参数:空格变量名;php通过$argv数组获取
引号:双引号是变量值,单引号是作为字符串引用
linux命令?
打包:tar czf;gzip;zip;
解压:tar xzf;gunzip;unzip;
创建目录:mkdir
修改权限:chown -R
查看文件最后10行:tail -n 10 text.log
重启nginx服务器:service nginx restart
重启进程:service supervisor restart
重启php: service php7.1-fpm restart
查找指定目录下文件:find
编辑crontab定时任务:crontab -e
查看服务进程:ps -ef | grep nginx
当前目录:pwd
显示文件内容:cat
删除命令:rm -rf 目录/ (递归删除)
重命名/移动文件到目录:mv 被操作文件 文件名/新目录
查看文件最后10行并高亮某词:tail -n 10 | grep "time_diff"
查看正在改变的文件:tail -f
复制文件:cp 文件名 被复制地址
查看命令历史:history
Git常于命令:
初始化仓库:git init
克隆:git clone
暂存:git add
提交:git commit
推送:git push
检出、切换分支:git checkout
创建分支:git branch
清理:git clean
拉取:git fetch
拉取合并:git pull
查看状态:git status
查看历史:git log
合并分支:git merge
合并分支:git rebase -i(start, end)左闭右开,合并多个commit为一个commit
回滚:git reset --hard commit_id(版本id)(恢复到指定版本,版本后所有修改重置)
回滚:git revert -n commit_id(版本id)(只恢复指定版本,只修改指定的一个版本)
merge和rebase的区别?
相同:
都是用来合并分支的;
区别:
日志区别:
merge:不会保留merge分支的commit,rebase会保留
处理冲突的区别:
merge解决完冲突,会产生一个commit,rebase不会,但如果多个分支就要处理多次冲突
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。