Linux常见的21条面试命令
2024-01-01 06:50:42
文章目录
简单文件
查看+权限
- cp, cd, pwd, ls, mv, rm
- chmod
+-等777u=rw go=r, o, :所有者权限,组权限,其他用户权限 - chown
- chgrp
文件搜索find()
find / -name file:从根目录下搜索find / -user filefind /usr/bin: 搜索具体目录下的find / -sizewhereis pip显示二进制文件、源码或者man的位置which pip显示二进制文件或者可执行文件的完整路径
文件内容(查看查找处理)
cat
cat filetac filecat -n file:显示文件行数more filehead -n +1000 filetail -n +1000 file:从1000行开始显示,显示1000行以后的cat filename | head -n 3000 | tail -n +1000:显示1000行道3000行cat file | tail -n +3000 | head -n 1000从3000行开始显示,显示1000行
tail表示偏移量
head表示总行数
grep
grep Aug /filename -A 5 -B 5:展示上下5行内容
grep ^Aug /filename:找以Aug开始的
grep [0-9] /file
grep Aug -R /目录
sed
sed 's/string1/string2/g test.txt':将txt文件中的string1替换成string2sed '/^$/d test.txt':删除文件所有空白行/^\s*$/等于/^$/是一个正则表达式
paste
paste file1 file2:合并两个文件或者两栏目的内瓤paste -d '+' file1 file2: 合并两个文件或两栏的内容,中间用’+'区分
sort
sort -r:逆序排序sort -n: 按照数字排序。否则就是字符串了
comm
# 比较,输出删除file1包含的内容
comm -1 file1 file2
# 比较,输出删除file1包含的内容
comm -2 file2 fil2
# 求并集
comm -3 file1 file2
系统
tmux
- 将会话放入到后台
ctrl-b d - 查看当前tmux会话
tmux list-session - 连接会话
tmux attach-session -t 0 - 删除所有会话
tmux kill-server -t 1 - 创建窗口
ctrl-b %: 右侧创建 "下侧创建 - 切换
ctrl-b 箭头
进程
内存
输入输出
标准输入:0
标准输出:1
错误输出:2
>:覆盖
>>:追加
2>:错误重定向
&>:标砖输入输出合并写入
常见的shell 命令
循环,判断,变量
# 统计列数
cols = head -n 1 file.txt | wc -w
for (( i = 1; i < $cols; i++ )); do
awk '{print $'"$i"'}' file.txt | xargs
done
函数
awk
awk '{print $2, $1}':输出第2行,第一行
行列转换
awk '
{
for (i=1; i<=NF; i++) {
if (NR == 1) {
arr[i] = $i;
} else {
arr[i] = arr[i] " " $i;
}
}
}
END {
for (i=1; i<=NF; i++) {
print arr[i];
}
}
' file.txt
grep
- -A
- -B
- -n
sed
sort
sort -r:逆序
sort -n:按照出现的词频
sort -k1:按照第一列进行排序
uniq
wc
-l :统计行数
-m :字符数(包括空格和换行符)
-w :单词数
-c:字节数
L:最长行的字符数
tr
tr 's' 't' :替换
tr -d 'l'删除
tr -s ' '压缩重复字符
tr -s ' ' '\n' :将重复的空格压缩成\n
常见题目
词频统计
cat words.txt | tr -s '[:space:]' '\n' | sort | uniq -c | sort -nr -k1 | awk '{print $2, $1}'
转置文件
查看文件第10行
cat file.txt | tail +n 10 | head -n 1
找关键字的上下10行
grep string -A 5 -B 5 file.txt
删除大于50m的文件
find /var/mail/ -size +50M -exec rm {} \;
Linux如果内存占用过高怎么
top:定位某一个进程
jmap:打印堆信息,生成堆快照
jhat:使用分析快照文件,查看是否存在内容泄漏:如果使用的对内存远远小于实际的占用内容,那么可能会出现内存泄漏的情况。
文章来源:https://blog.csdn.net/fuzekun/article/details/135320973
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!