电子产业一站式赋能平台

PCB联盟网

搜索
查看: 22|回复: 0
收起左侧

别让Linux基础拖后腿!这些Shell骚操作你真的了解吗?

[复制链接]

387

主题

387

帖子

4599

积分

四级会员

Rank: 4

积分
4599
发表于 昨天 11:00 | 显示全部楼层 |阅读模式
击左上方蓝色“一口Linux”,选择“设为星标
第一时间看干货文章
?【干货】嵌入式驱动工程师学习路线?【干货】Linux嵌入式知识点-思维导图-免费获取?【就业】一个可以写到简历的基于Linux物联网综合项目?【就业】找工作简历模版

2yzpl0fgs35640448505.gif

2yzpl0fgs35640448505.gif


Shell是Linux系统的核心武器,但很多人只会ls、cd、rm老三样。以下这些进阶骚操作,让你告别“Shell小白”,效率直接拉满!

oblxh5aklsx640448605.jpg

oblxh5aklsx640448605.jpg

head

一、命令行快捷键:手速翻倍光标移动
  -Ctrl + a:跳转到命令行首。
  -Ctrl + e:跳转到命令行尾。
  -Alt + b / Alt + f:按单词向前/向后跳(比方向键快10倍)。
历史操作
  -!!:重复上一条命令(sudo !!秒提权重试)。
  -!$:引用上一条命令的最后一个参数(如mkdir dir && cd !$)。
  -Ctrl + r:反向搜索历史命令,输入关键词实时匹配。
快速编辑
  -Ctrl + w:删除前一个单词。
  -Ctrl + u:删除光标前所有内容。
  -Ctrl + k:删除光标后所有内容。二、管道与重定向:数据操控大师组合技
  - cmd 2>&1 | tee log.txt:同时输出到屏幕和文件(含错误流)。
  - curl -s http://xxx | jq .data:直接解析JSON并提取字段(需jq工具)。
黑洞与白洞
  - >/dev/null 2>&1:丢弃命令的所有输出(静默执行)。
  - cmd input.txt:从文件读取输入(代替手动敲键盘)。
进程替换
        diff ls dir1) ls dir2) # 比较两个目录的文件列表三、文本处理:一行代码干翻Excelawk 魔法
  -提取最后一列:awk '{print $NF}' file.txt
  -统计IP访问次数:awk '{ip[$1]++} END {for (i in ip) print i, ip}' access.log
sed 骚操作
  -替换换行符为逗号:sed ':a;N;$!ba;s/
/,/g' file.txt
  -删除空行:sed '/^$/d' file.txt
grep 进阶
  -显示匹配行的前后内容:grep -A 3 -B 2 "error" log.txt # 显示匹配行及前后3行、2行
  -反向匹配:grep -v "success" file.txt(排除含"success"的行)四、进程管理:真正的控场王后台与前台
  -cmd &:后台运行命令。
  -jobs:查看后台任务,fg %1恢复第1个任务到前台。
  -nohup cmd &:断开SSH后命令仍运行(输出重定向到nohup.out)。
信号操控
  -Ctrl + z:暂停当前任务(挂起到后台)。
  -kill -9 PID:强制杀死进程(-15为优雅终止)。
  -pkill -f "pattern":按名称模式杀进程。
资源监控
  -htop:交互式进程管理器(比top更直观)。
  -lsof -i :8080:查看占用8080端口的进程。五、脚本技巧:告别低效重复变量处理
  -默认值:${var:-"default"}(若var为空则用默认值)。
  -字符串截取:${str:0:5}(取前5个字符)。
  
函数与别名# 定义函数快速压缩
        zipdir() { zip -r "$1.zip" "$1"; }
        # 别名简化常用命令
        alias ll='ls -alh --color=auto'
脚本调试
  -set -x:开启调试模式(打印每条命令)。
  -set -e:遇到错误立即退出(避免雪崩)。六、文件操作:批量改名不是梦万能find
  -删除7天前的日志:find /logs -name "*.log" -mtime +7 -exec rm {} \;
  -批量修改权限:find . -type f -name "*.sh" -exec chmod 755 {} \;
rename 神器
        -所有.txt后缀改为.md:rename 's/\.txt$/.md/' *.txt七、冷门但逆天的工具xargs 并行加速
        cat urls.txt | xargs -P 4 -I {} curl -O {} # 4线程并行下载
ssh 隧道与代理
        -本地端口转发:ssh -L 8080:localhost:80 user@remote
        # 访问remote的80端口→本地8080
tmux 分屏
  -tmux new -s mysession:新建会话。
  -Ctrl + b + ":水平分屏,Ctrl + b + %:垂直分屏。八、安全与权限:别让自己挖坑sudo 免密
        在/etc/sudoers中添加:username ALL=(ALL) NOPASSWD: ALL # 谨慎使用!
文件权限检查
        -find / -perm -4000 2>/dev/null
  查找所有SUID文件(潜在风险)。总结:Shell的终极哲学-自动化一切:能写脚本的绝不手动操作。
-组合技为王:管道、重定向、工具链叠加使用。
-持续学习:每天掌握一个命令,一年后你就是终端之神!
end

一口Linux

关注,回复【1024】海量Linux资料赠送
精彩文章合集
文章推荐
?【专辑】ARM?【专辑】粉丝问答?【专辑】所有原创?【专辑】linux入门?【专辑】计算机网络?【专辑】Linux驱动?【干货】嵌入式驱动工程师学习路线?【干货】Linux嵌入式所有知识点-思维导图
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表