Basic Linux/Unix command Interview Questions

Overview of Basic Linux/Unix command Interview Questions: 常见Linux命令的概述记录

初级问题

  • 列出目录内所有的软链接文件

ls -la | grep "^l"

ls -la会以ASCII列出所有文件,而软链接文件都是以l开头的,grep "^l"会找出它们。关于grep的正则pattern可以见此:Using Grep & Regular Expressions to Search for Text Patterns in Linux | DigitalOcean

  • 创建一个只读的文件?
1
2
touch file
chmod 400 file

更多可见:File permissions in UNIX Linux with Example >> Unix Tutorial

  • 如何将一个进程在后端运行?如何将其返回前端?如何杀死进程?

分别是在命令后加上&fg jobid(用jobs来看jobid);kill -KILL PID 可见How do I run a Unix process in the background?

  • 测试远程链接?

pingtelnet即可

  • 找寻历史命令?

history | grep "Pattern"

  • 远程复制文件?

scp,或者rsyncsftp

  • 进程的CPU占用?

top

  • 当前磁盘用量?

df -h

  • Swapping交换和Paging分页的区别?

paging指的是以页为单位的交换,
swapping指的是以整个进程为单位的交换。

paging机制是进程内外交换的主流,某些情况下仍然会使用swapping机制,比如:
1、系统内存严重短缺,paging机制的速度已经不足以满足需要。
2、进程处于完全非激活状态超过10秒钟。
swapping会把整个进程移出主存,而不像paging那样只弄点页面出去。

swapping和paging都是内存与磁盘(虚拟内存)之间的交互方式当内存不够用时,为了加载急需的程序进内存,需要将一部分暂时不用的内存存到磁盘上,两者对比swapping更快更粗暴,paging更慢更flexibly,
更多可见此[转载]内存的分页与交换_流苏_新浪博客

中级问题

  • ps -efps -auxwww有什么区别?

ps -auxwww可以打印死进程??

  • cpu信息?

cat /proc/cpuinfo

  • 软链接与硬链接区别

How to Create, Update and Remove Soft link in UNIX

  • 什么是僵尸进程?如何找到僵尸进程?

When a program forks and the child finishes before the parent, the kernel still keeps some of its information about the child in case the parent might need it - for example, the parent may need to check the child’s exit status. To be able to get this information, the parent calls ‘wait()’; In the interval between the child terminating and the parent calling ‘wait()’, the child is said to be a ‘zombie’

ps中,僵尸进程的状态将带有’Z’

  • 如何统计一个文件内字符”Unix”出现次数?

grep -c "Unix" filename

  • chmod是什么意思?r-- -w- --x代表着什么?

chmod用于改变一个文件或者目录在Linux里的权限,rwx分别代表读写执行,而字符顺序代表着用户 组 以及 其他, 那么这里的意思就是这个文件用户可读,组内用户可写,其他只能执行。

  • 系统内有个文件包含字符”UnixCommandInterviewQuestions”,如何找到?

见此10 Example of find command in Unix and Linux

  • 如何检查是否某进程在监听某端口?

telnet hostname port Top 10 basic networking commands in linux/unix

高级问题

  • 怎么知道某个文件被哪些进程使用?

lsof,尼玛呀,这就是我baidu电话面试时碰到的问题。。

  • 查看你的某个端口被什么远程服务器连接?

netstat -a | grep "port"

  • nohup是什么?

用于在后端运行程序,但是和&不同,nohup在用户log off 时不会停止运行,而&会终止。

  • ephemeral port?

临时端口也叫做暂时端口。通常存在于客户机中。它在客户端应用程序需要连接到服务器时建立而在客户端应用程序终止时取消。它的端口号是随机选取的,数值大于1023。

  • 如果一个进程正在往MYSQL里写数据,如何管查它写入的速度?

watch

  • 替换某文件内所有某字符?

sed s/Unix/UNIX/g fileName

  • 某文件包含以tab分隔的Name, Address and Phone Number,如何提取所有的Phone Number?

cut -f3 filename

  • 服务器运行时间?

uptime

  • IP 与 hostname互转?

nslookup