面试基础-linux

常见面试问题:

1、查看进程的命令-ps,如何查看一个指定的进程,比如java

ps -a | grep java 查看进程所有内容

ps - ef | gerp java 以全格式查看进程所有内容

2、常用的liux命令有哪些

3、kill -9/ -15 的区别

kill杀死进程(是通过一个信号来终止一个进程)

-9:发出信号是sigkill 相当于exit,不能被捕捉或者忽视,所以是立即杀死进程

-15: sigterm 当程序接受到这个信号后,大部分会释放自己的资源,然后再停止,但有一部分,接收到信号以后,可以不立即停止,例如它正在等待IO,则不会立即做出相应,所以sigterm信号会被阻塞,忽略

4、如何找到一个特定的文件

一种是find命令;

另一种是locate命令:需要先安装它,比find更快,它是在数据库中查找文件

find - name test.file 全局搜索,费时间

find /var -name test.file 在已知路径var下搜索,效率高,具体查看liux find 命令使用手册

5、如何替换一个文件中的字符串

sed ’s/原字符串/替换字符串/‘ 目录名

例如:sed 'aaaa/bbbb' test.txt //将test.txt中的aaa替换成bbbb

6、你有用linux安装软件吗?

8、查看监听网络端口命令

netstat -a

9、more和cat的区别

cat查看文件内容

more 分页查看文件的内容

10、修改密码: passwd

11、修改权限: chmod

12、在性能测试中你用到什么命令

ps top free 查看进程使用情况,kill杀死进程

iostat 查看CPU和各设备IO使用率

vmstat查看内存使用情况

13、查看磁盘空间的命令:

du 查看文件目录大小

df 查看磁盘使用情况

14、 如何找到一个文件中含aaa和bbb的行

grep 'aaa' *.txt | xargs grep ‘bbb’

linux常用命令大全

系统信息:

arch 显示机器的处理架构

uname -m 显示机器的处理架构

uname -r 显示正在使用的内核版本

dmidecode -q 显示硬件系统部件 -(SMBIOS/DMI)

hdparm -i /dev/hda 罗列一个磁盘的架构特性

cat /proc/cpuinfo 显示CPU info信息

cat /proc/interrupts 显示中断

cat /proc/meminfo 校验内存使用

data 显示系统日期

关机:(系统的关机,重启以及登出)

shutdown -h now 关闭系统

init 0 关闭系统

telinit 0 关闭系统

shutdown -h hours: minutes 按照指定时间关闭系统

shutdown -c 取消按预定时间关闭系统

shutdown -r now 重启

reboot 重启

logout 注销

文件和目录:

cd /home 进入home目录

cd ..返回上一级目录

cd../..返回上两级目录

cd 进入个人主目录

cd - 返回上次所在目录

pwd 显示工作路径

ls 查看目录中的文件

ls -F 查看目录中的文件

ls -l 显示文件和目录的详细资料

ls -a 显示隐藏文件

ls *[0-9]* 显示包含数字的文件名和目录名

tree 显示文件和目录由根目录开始的树形结构

lstree 显示文件和目录由根目录开始的树形结构

mkdir dir1 创建一个名为dir1的目录

mkdir dir1 dir2 同时创建2个目录

mkdir -p /tmp/dir1/dir2 创建一个目录树

rm -f file1 删除file1文件

rmdir dir1 删除目录dir1

rm -rf dir1 删除目录dir1,同时删除其内容

rm -rf dir1 dir2 同时删除目录dir1,dir2,且删除其内容

mv dir1 dir2 重命名一个目录

cp file1 file2 复制一个文件

cp dir/* 复制一个目录下的所有文件到当前目录

touch -t 071225000 file1 修改一个文件或者目录的时间戳

文件查找与搜索

find / -name file1 从/开始进入根文件系统,搜索文件和目录

find / -user user1 搜索属于用户user1的文件和目录

find /home/user1 -name \*.bin 在目录/home/user1中搜索带有bin结尾的文件

find /usr/bin -tpye f -atime +100搜索在过去100天内未被使用过的执行文件

find /usr/bin -tpye f -mtime -10 搜索在10天内被创建或者修改过的文件

whereis halt 显示一个二进制文件,源码或者man的位置

which halt 显示一个二进制文件或者可执行文件的完整路径

挂载一个文件系统

mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘,确定目录mnt/hda2已经存在

磁盘空间

df -h 显示已经挂载的分区列表

ls -lsr | more 以尺寸大小排列文件和目录

用户和群组

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

useradd user1 创建一个新用户

userdel -r user1 删除一个用户(-r排除主目录)

查看文件内容

cat file 从第一个字节开始正向查看文件的内容

tac file 从最后一行开始反向查看一个文件的内容

more file 查看一个长文件的内容

less file1 类似于more

head -2 file1 查看一个文件的前两行

tail -2 file1 产看一个文件的最后两行

tail -f 动态查看日志文件 tail -f /var/log/messags 实时查看被添加到一个文件中的内容

paste file1 file2 合并两个文件或两栏的内容

sort file1 file2 排序两个文件的内容

sort file1 file2 | uniq 去除两个文件的并集(重复行只保留一份)

sort file1 file2 | uniq -u 删除交际,留下其他行

linux面试题:

1、在/user/local目录下,解压test.tar.gz?

cd/user/local/

tar -xzvf test.tar.gz

2、 在当前目录下创建名字为test的文件夹,将root路径下的systenout.log文件转移到test文件夹下,并将操作权限改为只读

mkdir test

mv /root/sysenout.log test

chmod 444 sysenout.log

3、使用linux命令实现A.txt与b.txt合并为c.txt,c.txt不存在,合并完要删除A.txt与b.txt

cat A.txt >>c.txt

cat b.txt >>c.txt

rm A.txt

rm b.txt

4、查看ip : ipconfig

查看进程:ps 查看当前用户会话中打开的进程

5、让shell脚本拥有者具备执行权限

chmod u+x /home/test/run.s

chmod u= rwx, g= rx,o=x /home/test/run.s

chmod 751 /home/test/run.s

6、杀死tomcat 进程的方式又哪几种?

netstat -apn|grep 8080

kill -9 netstat -apn 查找出来的进程号

7、远程连接linux使用的是ssh协议

8、linux下面如何添加java环境变量

vi/etc/profile

9、linux的通配符:?*{n,m}

*:匹配0或这个多个字符

?匹配任意一个字符

{n,m}匹配括号内包含的多个文件

10、查看物理磁盘使用情况:df -m