阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux中11个比较实用的命令行

52次阅读
没有评论

共计 1830 个字符,预计需要花费 5 分钟才能阅读完成。

导读 阅读本文了解组合简单命令以创建更强大命令的可能性。
1. 同时创建不同名称的文件夹

shell 的{} 运算符非常适合此操作。下面是用{} 创建三个子目录的示例:

[root@localhost ~]# mkdir -p /tmp/users/{dir1,another,third}
2. 就地编辑文件

在不使用编辑器的情况下替换一个或多个文件上的字符串,可以使用sed 来操作:

[root@localhost ~]# sed -i 's/SELINUX=disabled/SELINUX=enforcing/g' /etc/selinux/config
3. 使用 web 服务器快速共享文件

下面可以使用 python 的 http.server 搭建一个简易的 web 网站,来显示当前目录的文件,以方便下载:

[root@localhost ~]# cd /root && python3 -m http.server 8080
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...

Linux 中 11 个比较实用的命令行
Linux 中 11 个比较实用的命令行

4. 使用 journalctl 查询错误日志

可以使用 journalctl 以及 sort 和 uniq 的组合来查找最近的错误:

[root@localhost ~]# journalctl --no-pager  --grep 'fail|error|fatal' --output json| jq '._EXE'| sort| uniq -c | sort --numeric --reverse --key 1
     45 null
     14 "/usr/bin/cat"
      6 "/usr/lib/systemd/systemd"
      6 "/usr/libexec/platform-python3.6"
      6 "/usr/bin/bash"
      5 "/usr/sbin/useradd"
      3 "/usr/sbin/rngd"
      2 "/usr/sbin/groupadd"
      1 "/usr/sbin/rsyslogd"
5. 命令行中向文件写入内容

当需要编写多行文档时,然后使用自定义的字符 EOL 来结束写入,这是一个很好的技巧:

[root@localhost ~]# cat > /root/documents.txt
> line 1
> line 2
> a b c d ef
> EOL

Linux 中 11 个比较实用的命令行

6. 不使用 top 监控内存

使用 watch 命令每 5 秒重复一次 free 命令,来监测内存:

[root@localhost ~]# watch -n 5 -d free -h
7. 显示磁盘分区大小

使用 lsbk 和 jq 来显示分区信息:

[root@localhost ~]# lsblk --json | jq -c '.blockdevices[] | [.name,.size]'
["sda","20G"]
["sdb","20G"]
["sdc","20G"]
["sdd","20G"]
["sr0","1024M"]
["nvme0n1","20G"]

Linux 中 11 个比较实用的命令行

8. 快速显示文件的类型

下面创建一个函数,调用 stat 命令来显示文件名和输入的文件类型:

[root@localhost ~]# function wi {test -n "$1" && stat --printf "%F\n" "$1";}
或者可以检查多个文件的类型:[root@localhost ~]# function wi {test "$#" -gt 0 && stat --printf "%n: %F\n" "$@";}

Linux 中 11 个比较实用的命令行

9. 显示已安装 RPM 包的大小

可以使用 rpm 包管理器的 --queryformat 选项来查看包的大小:

[root@localhost ~]# rpm --queryformat='%12{SIZE} %{NAME}\n' -q adobe-mappings-cmap-20171205-3.el8.noarch
    13746679 adobe-mappings-cmap

Linux 中 11 个比较实用的命令行

10. 查看天气

使用此功能可以查看天气:

[root@localhost ~]# weather() { curl -s --connect-timeout 3 -m 5 http://wttr.in/$1;}

不添加参数,输出的是当前地理位置的天气,输入城市名称可以查看当地天气
Linux 中 11 个比较实用的命令行

11. 显示访问 web 服务器的前 10 个 IP 地址

下面是从 access.log 文件中获取前十个访问 web 服务器的 ip 地址:

[root@localhost httpd]# cat /var/log/nginx/access.log | cut -f 1 -d ' ' | sort | uniq -c | sort -hr | head -n 10
总结

阅读本文了解组合简单命令以创建更强大命令的可能性。

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计1830字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中