Ubuntu Bash工具

Ubuntu Bash工具

  • 💻⚡ Ubuntu Bash 工具
    • 🔨 指令列表
      • 1. 🔋 查看电池信息 (`-b`)
      • 2. 💻 查看 CPU 和内存使用情况 (`-m`)
      • 3. 🔄 旋转屏幕 (`-r`)
      • 4. 🔓 解锁屏幕 (`-s`)
      • 5. 🌐 设置代理 (`-p <proxy_url>`)
    • 🚀 推荐使用符号链接(`ln -s`)调用
      • 步骤 1: 给脚本增加执行权限
      • 步骤 2: 创建符号链接
      • 步骤 3: 直接使用命令

💻⚡ Ubuntu Bash 工具

SSHUbuntu 服务器 如果想查看电池电量、监控 CPU 和内存使用情况、设置代理、旋转屏幕等 其实都有指令 但是比较麻烦要去搜 这里简单的更新一点这个指令 bash 脚本

代码如下:

#!/bin/bash# Function to display usage message
display_usage() {echo "Usage: $0 [-b] [-r] [-p <proxy_url>]"echo "Options:"echo "  -b    Display battery information"echo "  -m    Display CPU and memory usage"echo "  -p    Set HTTP and HTTPS proxy (format: host:port)"echo "  -r    Rotate the screen in the left direction"echo "  -s    Show screen if it is locked"
}# Check if no options are provided
if [ "$#" -eq 0 ]; thendisplay_usageexit 1
fi# Ubuntu helper.
if [ "$1" = "-b" ]; thenDEVICE_PATH=$(upower -e | grep 'BAT')upower -i "$DEVICE_PATH" | grep percentage | awk '{print "Battery =====> " $2}'elif [ "$1" = "-m" ]; thentop -b -n1 | grep "Cpu(s)" | awk '{print "CPU Usage =====> " $2 + $4 " %"}'free | awk '/Mem/{print "Mem Usage =====> " $3/$2 * 100.0 " %"}'elif [ "$1" = "-r" ]; thenxrandr -o leftelif [ "$1" = "-s" ]; thengnome-screensaver-command -delif [ "$1" = "-p" ]; thenif [ "$#" -ne 2 ]; thenecho "[ ERROR ] Invalid number of -p. Usage: -p <proxy_url>"exit 1fiecho -e "[ INFO ] To diable proxy, You should close the terminal. \n"echo "export http_proxy="http://$2/""echo "export https_proxy="http://$2/""echo "export ftp_proxy="http://$2/""echo "export no_proxy="127.0.0.1,localhost""# For curlecho "export HTTP_PROXY="http://$2/""echo "export HTTPS_PROXY="http://$2/""echo "export FTP_PROXY="http://$2/""echo "export NO_PROXY="127.0.0.1,localhost""echo -e "\n[ INFO ] Copy the follow message to set the proxy."elseecho "[ ERROR ] Invalid option: $1"display_usageexit 1
fi

🔨 指令列表

1. 🔋 查看电池信息 (-b)

如何使用:

./script.sh -b

脚本实现:

DEVICE_PATH=$(upower -e | grep 'BAT')
upower -i "$DEVICE_PATH" | grep percentage | awk '{print "Battery =====> " $2}'

输出示例:

Battery =====> 85% 🔋

2. 💻 查看 CPU 和内存使用情况 (-m)

如何使用:

./script.sh -m

脚本实现:

top -b -n1 | grep "Cpu(s)" | awk '{print "CPU Usage =====> " $2 + $4 " %"}'
free | awk '/Mem/{print "Mem Usage =====> " $3/$2 * 100.0 " %"}'

输出示例:

CPU Usage =====> 15.3% 🧑‍💻
Mem Usage =====> 60.2% 💾

3. 🔄 旋转屏幕 (-r)

如何使用:

./script.sh -r

脚本实现:

xrandr -o left

输出示例:

Screen rotated to the left direction.

4. 🔓 解锁屏幕 (-s)

如何使用:

./script.sh -s

脚本实现:

gnome-screensaver-command -d

输出示例:

Screen unlocked.

5. 🌐 设置代理 (-p <proxy_url>)

如何使用:

./script.sh -p <proxy_url>

脚本实现:

echo "export http_proxy="http://$2/""
echo "export https_proxy="http://$2/""
echo "export ftp_proxy="http://$2/""
echo "export no_proxy="127.0.0.1,localhost""
# For curl
echo "export HTTP_PROXY="http://$2/""
echo "export HTTPS_PROXY="http://$2/""
echo "export FTP_PROXY="http://$2/""
echo "export NO_PROXY="127.0.0.1,localhost""

输出示例:

[ INFO ] To disable proxy, You should close the terminal.export http_proxy="http://proxy.example.com:8080/"
export https_proxy="http://proxy.example.com:8080/"
export ftp_proxy="http://proxy.example.com:8080/"
export no_proxy="127.0.0.1,localhost"

🚀 推荐使用符号链接(ln -s)调用

为了让这个脚本更加便捷,我推荐通过创建符号链接(symlink)将其加入到系统路径。这样,我就可以直接通过简短的命令来执行脚本,而无需每次都输入完整路径。

步骤 1: 给脚本增加执行权限

首先,我需要确保脚本具有执行权限:

chmod +x /path/to/your/script.sh

步骤 2: 创建符号链接

接下来,我可以使用 ln -s 命令在 /usr/bin 目录下创建符号链接,这样我可以直接通过命令来调用脚本:

sudo ln -s /path/to/your/script.sh /usr/bin/xxx

例如,如果我将脚本命名为 pldzlt.sh,可以这样做:

sudo ln -s /home/user/scripts/pldzlt.sh /usr/bin/pldzlt

步骤 3: 直接使用命令

pldzlt -b

结果如下图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/67736.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【GoLang】两个字符串如何比较大小?以及字典顺序的比较规则

在 Go 语言中&#xff0c;字符串的比较是基于字典顺序进行的。 字典顺序的比较规则&#xff1a; 比较两个字符串从左到右逐个字符的Unicode码点值&#xff0c; 若比较结果不相等则将此结果作为字符串大小的结果&#xff0c; 若比较结果相等则比较下一位&#xff0c; 若其中一个…

《机器学习》——贝叶斯算法

贝叶斯简介 贝叶斯公式&#xff0c;又称贝叶斯定理、贝叶斯法则&#xff0c;最初是用来描述两个事件的条件概率间的关系的公式&#xff0c;后来被人们发现具有很深刻的实际意义和应用价值。该公式的实际内涵是&#xff0c;支持某项属性的事件发生得愈多&#xff0c;则该属性成…

matlab离线安装硬件支持包

MATLAB 硬件支持包离线安装 本文章提供matlab硬件支持包离线安装教程&#xff0c;因为我的matlab安装的某种原因&#xff08;破解&#xff09;&#xff0c;不支持硬件支持包的安装&#xff0c;相信也有很多相同情况的朋友&#xff0c;所以记录一下我是如何离线安装的&#xff…

Infineon PSoC 4 CapSense ModusToolbox IDE - 系统生态篇

本文档说明了 ModusToolbox 软体环境的 4 个层面&#xff0c;该环境为 CapSense 设备和生态系统提供支援。本文是 Infineon PSoC 4 CapSense ModusToolbox IDE-系统介绍的延伸篇 (Infineon PSoC 4 CapSense ModusToolbox IDE -系统介绍篇 - 大大通(简体站))。 什么是ModusToolb…

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统 这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。 通过PVE后台上传操作系统ISO镜像。 然后在PVE上【创建虚拟机】&#xff0c;选定上传的龙蜥操作系统镜像进行系统安装。 注意&#xff1a;在安装过程中&#xff0c;要设定语言、时区、超管用户root的密码、普…

ElasticSearch内存占用率过高怎么办?

文章目录 1&#xff0c;先用top看看各个进程的内存占用情况2&#xff0c;不能简单的杀死进程&#xff0c;然后再重启。3&#xff0c;查看一下ElasticSearch进程的具体启动情况4&#xff0c;修改Elasticsearch 的Java堆内存 1&#xff0c;先用top看看各个进程的内存占用情况 先…

OpenHarmony AVScreenCaptureRecorder录屏开发指导

一、简介 OpenHarmony 5.0新增了AVScreenCaptureRecorder ArkTs API。用户可以调用录屏AVScreenCaptureRecorder API录制屏幕&#xff0c;采集音频源数据&#xff0c;获取封装后的音视频文件&#xff0c;然后通过文件的形式流转到其他模块进行播放或处理&#xff0c;用于以文件…

【Spring】构造方法注入 属性加final

在Spring框架中&#xff0c;构造方法注入是一种常见的依赖注入方式。通过构造方法注入&#xff0c;Spring容器会在创建Bean时自动调用相应的构造方法&#xff0c;并将所需的依赖作为参数传入。关于构造方法注入时属性是否加final关键字&#xff0c;主要有以下几点区别&#xff…

一.MySQL程序简介

整体介绍 1.服务端mysqld(可执行文件) mysqld --verbose --help 2.客户端mysql(可执行文件) 3.其它工具包程序

G1垃圾回收器的FullGC

如何确定GarbageFirst回收器发生的是FullGC ? 必须出现FullGC字样才算是FUllGC&#xff0c;例如下图&#xff1a;因为内存分配失败&#xff08;Allocation Failure&#xff09;导致 如果不出现FullGC的字样说明它不是FUllGC&#xff0c;并不像Serial GC、ParallelGC的在老年代…

Sql 创建用户

Sql server 创建用户 Sql server 创建用户SQL MI 创建用户修改其他用户密码 Sql server 创建用户 在对应的数据库执行&#xff0c;该用户得到该库的所有权限 test.database.chinacloudapi.cn DB–01 DB–02 创建服务器登录用户 CREATE LOGIN test WITH PASSWORD zDgXI7rsafkak…

腾讯云AI代码助手编程挑战赛-武器大师

作品简介 对话过程能够介绍二战 各种武器 冷战 武器 现代的 各种武器装备&#xff0c;陆海空三军都知道。 技术架构 使用全后端分离的架构&#xff0c;前端使用Vue脚手架&#xff0c;腾讯云修改样式css 开发环境、开发流程 系统&#xff1a;win11 开发工具&#xff1a;VS…

Maven核心插件之maven-resources-plugin

前言 Maven 插件是 Maven 构建系统的重要组成部分&#xff0c;它们为 Maven 提供了丰富的功能和扩展能力&#xff0c;使得 Maven 不仅是一个构建工具&#xff0c;更是一个强大的项目管理平台。在 Maven 项目中&#xff0c;插件的使用通常通过配置 pom.xml 文件来完成。每个插件…

Golang的文件加密技术研究与应用

Golang的文件加密技术研究与应用 一、加密技术概述 文件加密的重要性 文件加密是指通过对文件进行加密操作&#xff0c;将文件内容转化为一段难以理解的数据。这样可以保护文件的隐私和安全&#xff0c;防止文件被未授权的用户访问和窃取。在日常工作和生活中&#xff0c;我们经…

Redis之秒杀活动

目录 全局唯一ID&#xff1a; 为什么 count 不可能为 null&#xff1f; 为什么返回值是 timestamp << COUNT_BITS | count&#xff1f; 整体的逻辑 (1) 生成时间戳 (2) 生成序列号 (3) 拼接时间戳和序列号 超卖问题&#xff1a; 基于版本号的乐观锁 CAS思想 …

VSCode 在Windows下开发时使用Cmake Tools时输出Log乱码以及CPP文件乱码的终极解决方案

在Windows11上使用VSCode开发C程序的时候&#xff0c;由于使用到了Cmake Tools插件&#xff0c;在编译运行的时候&#xff0c;会出现输出日志乱码的情况&#xff0c;那么如何解决呢&#xff1f; 这里提供了解决方案&#xff1a; 当Settings里的Cmake: Output Log Encoding里设…

【C++经典例题】求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a; 期待您的关注 题目描述&#xff1a; 原题链接&#xff1a; 求123...n_牛客题霸_牛客网 (nowcoder.com) 解题思路&#xff1a; …

STM32 单片机 练习项目 LED灯闪烁LED流水灯蜂鸣器 未完待续

个人学习笔记 文件路径&#xff1a;程序源码\STM32Project-DAP&DAPmini\1-1 接线图 3-1LED闪烁图片 新建项目 新建项目文件 选择F103C8芯片 关闭弹出窗口 拷贝资料 在项目内新建3个文件夹 Start、Library、User Start文件拷贝 从资料中拷贝文件 文件路径&#xff1a;固…

DAY15 神经网络的参数和变量

DAY15 神经网络的参数和变量 一、参数和变量 在神经网络中&#xff0c;参数和变量是两个关键概念&#xff0c;它们分别指代不同类型的数据和设置。 参数&#xff08;Parameters&#xff09; 定义&#xff1a;参数是指在训练过程中学习到的模型内部变量&#xff0c;这些变量…

VS Code 可视化查看 C 调用链插件 C Relation

简介 一直想用 SourceInsight 一样的可以查看函数调用链一样的功能&#xff0c;但是又不想用 SourceInsight&#xff0c;找了一圈没有找到 VS Code 有类似功能的插件&#xff0c;索性自己开发了一个。 这是一个可以可视化显示 C 函数调用关系的 VS Code 插件&#xff0c;功能纯…