六、java-操作系统-1

1. 操作系统

1.1 Linux里如何查看一个想知道的进程?

参考回答

查看进程运行状态的指令:ps命令。“ps -aux | grep PID”,用来查看某PID进程状态

答案解析

//ps使用示例
//显示当前所有进程  
ps -A  
//与grep联用查找某进程  
ps -aux | grep apache  

//查看进程运行状态、查看内存使用情况的指令均可使用top指令。
top

1.2 Linux里如何查看带有关键字的日志文件?

参考回答

  1. cat 路径/文件名 | grep 关键词
# 返回test.log中包含http的所有行
cat test.log | grep "http"
  1. grep -i 关键词 路径/文件名 (与方法一效果相同,不同写法而已)
# 返回test.log中包含http的所有行(-i忽略大小写)
grep -i "http" ./test.log  

1.3 说说你对grep命令的了解?

参考回答

grep 命令。强大的文本搜索命令,grep(Global Regular Expression Print) 全局正则表达式搜索。

grep 的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。

答案解析

1.    //参数  
2.    -A n --after-context显示匹配字符后n行  
3.    -B n --before-context显示匹配字符前n行  
4.    -C n --context 显示匹配字符前后n行  
5.    -c --count 计算符合样式的列数  
6.    -i 忽略大小写  
7.    -l 只列出文件内容符合指定的样式的文件名称  
8.    -f 从文件中读取关键词  
9.    -n 显示匹配内容的所在文件中行数  
10.    -R 递归查找文件夹  
11.      
12.    //grep 的规则表达式:  
13.    ^       #锚定行的开始 如:'^grep'匹配所有以grep开头的行。   
14.    $       #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。   
15.    .       #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。    
16.    *       #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。  
17.    .*      #一起用代表任意字符。    
18.    []      #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。   
19.    [^]     #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。    
20.    \(..\)  #标记匹配字符,如'\(love\)',love被标记为1。     
21.    \<      #锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。  
22.    \>      #锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。  
23.    x\{m\}  #重复字符x,m次,如:'0\{5\}'匹配包含5个o的行。   
24.    x\{m,\} #重复字符x,至少m次,如:'o\{5,\}'匹配至少有5个o的行。    
25.    x\{m,n\}#重复字符x,至少m次,不多于n次,如:'o\{5,10\}'匹配5--10个o的行。    
26.    \w      #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。    
27.    \W      #\w的反置形式,匹配一个或多个非单词字符,如点号句号等。    
28.    \b      #单词锁定符,如: '\bgrep\b'只匹配grep。  

//实例:
1.    //查找指定进程  
2.    ps -ef | grep svn  
3.      
4.    //查找指定进程个数  
5.    ps -ef | grep svn -c  
6.      
7.    //从文件中读取关键词  
8.    cat test1.txt | grep -f key.log  
9.      
10.    //显示包含 ed 或者 at 字符的内容行  
11.    grep -E 'ed|at' test.txt  

1.4 Linux修改主机名的命令是什么?

参考回答

  1. 如果只需要临时更改主机名,可以使用hostname命令。

    sudo hostname <new-hostname>
    # 例如:
    sudo hostname myDebian #myDebian为修改名
  2. 如果想永久改变主机名,可以使用hostnamectl命令

    sudo hostnamectl set-hostname myDebian #myDebian为修改名

1.5 Linux开机自动执行命令如何实现?

参考回答

  1. 方法 #1 - 使用 cron 任务

    除了常用格式(分 / 时 / 日 / 月 / 周)外,cron 调度器还支持 @reboot 指令。这个指令后面的参数是脚本(启动时要执行的那个脚本)的绝对路径。

    然而,这种方法需要注意两点:

    a) cron 守护进程必须处于运行状态(通常情况下都会运行),同时

    b) 脚本或 crontab 文件必须包含需要的环境变量。

  2. 方法 #2 - 使用 /etc/rc.d/rc.local

    这个方法对于 systemd-based 发行版 Linux 同样有效。不过,使用这个方法,需要授予 /etc/rc.d/rc.local 文件执行权限:

    # chmod +x /etc/rc.d/rc.local

    然后在这个文件底部添加脚本。

全部评论

相关推荐

09-26 17:07
门头沟学院 Java
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务