前言
linux shell 常见的面试问题,基本是先让你随便说一些,测试一下你掌握的广度,这时候你至少要说上十个才行,但是!不要说太难的,否则很容易掉进自己的坑里,相当于提醒了面试官去问你 : find ,vi编辑器这种会让面试官出一个极复杂的命令。但是之后 面试官仍然会出一些 非常复杂的命令,本小节复习,除了基础中常见的命令之外,还有常见的复杂命令。
基础命令
注意,每个linux命令都包含很多参数,我这里不像网上教程一样全写出来,我只会把常用的或者面试大概率遇到的参数写出来,以免参数太多大家记混。而且参数一般都是相同的意思和概念,大家可以极大的减轻记忆负担,比如 -R 在几乎所有命令中都代表递归的意思;-f一般都是强制或忽略,-i一般是询问;-v 基本都是显示日志版本号等;-a 隐藏;-d目录;大部分命令的参数都可加可不加。
clear 清除屏幕
clear
alias 设置命令别名
alias lx = ls
crontab 定期执行程序
crontab 脚本
declare 声明变量
declare -i 变量 #声明一个整数变量
dmesg 显示开机设置
demsg |less
eval 求值
eval enable;ls #链接多个命令
export 设置环境变量
export -p #列出所有环境变量
rpm 管理套件
rpm 参数 -a 查询所有套件 rpm -hvi ***.rpm #安装某套件
bunzip2 解压
bunzip2 -v 文件.bz2
gunzip 解压
gunzip 文件.gz
compress 压缩解压
compress 文件 #压缩 compress -d 文件包 #解压
cpio 备份文件
cpio -o >文件 # 备份 cpio -p 目录 #复制文件
dump 备份系统
dump -0 -u 目录1 目录2 #备份2到1
gzexe 压缩win程序
gzexe 文件
gzip 压缩文件
gzip * #压缩当前目录所有文件 gzip -d * #解压文件
lha 压缩文件
lha -a 新文件名 旧文件
restore 还原系统
restore 参数
tar 压缩文件
tar -zcvf 旧文件 新文件 #压缩 tar -zxvf 压缩包 # 解压
unzip 解压
unzip 压缩包
poweroff 关机
poweroff 参数 -n : 在关机前不做将记忆体资料写回硬盘的动作 -w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里 -d : 不把记录写到 /var/log/wtmp 文件里 -i : 在关机之前先把所有网络相关的装置先停止 -p : 关闭操作系统之前将系统中所有的硬件设置为备用模式。
bc 计算命令
bc 参数 echo "10+10" | bc #打印20
tail 查看文件
tail 参数 文件 -f 循环 -n 尾部行数 -s 间隔秒 -c 字符数 tail -n +20 文件 #从第20行开始看 tail -c 10 文件 #显示最后的10个字符
head 查看开头
head 参数 文件 -n 行数 -c 字符数 head -n 5 文件 #显示开头的5行
|xargs 过滤器
find 文件 -perm +700 |xargs ls -l # 查询 cat 文件 |xargs #一行输出 cat 文件 |xargs -n3 #三列输出 find . -type f -name "*.php" -print0 | xargs -0 wc -l #统计所有php文件行数 cat 文件|xargs wget -c
ip 网络设置
ip link show #显示网络接口信息 ip link set eth0 up/down #启动/关闭网卡 ip addr show #显示网卡ip ip addr add/del #设置/删除网卡ip ip route list #查看路由信息 ip route add 地址 via 地址 dev eth0 #设置网断网管,数据走etho0接口 ip link list #显示网络设备
nohup 后台运行
nohup 命令
killall 杀死指定名字所有进程
killall node killall -9 关键字 killall -u 结束指定用户进程 killall -g 结束进程组 killall -I 忽略大小写
pkill 根据名字杀进程
pkill 参数 进程名 pkill -9 node #杀死所有node进程