linux自定义命令

文章目录

  • 1、自定义命令介绍
  • 2、自定义命令步骤 (centos7)
    • 2.1 新建隐藏目录存放自定义命令脚本文件
    • 2.2 将新建的目录配置环境变量
    • 2.3 取别名的方式简化已有命令
    • 2.4 编写自定义命令脚本

1、自定义命令介绍

不管是linux系统还是windows系统都支持自定义命令,windows端命令行用得不多,可视化接口又封装得太好,导致这个功能被忽视,但是linux端命令使用频率就太大了,玩个人服务器时可以根据个人习惯自定义一些命令,大大降低使用难度。

通过自定义命令,可以做到:

  1. 新建一些命令
  2. 简化已有命令
  3. 修改已有命令逻辑

核心思想:shell编程+配置环境变量

2、自定义命令步骤 (centos7)

请先以root用户身份登录系统。已经登录普通用户请以su root命令切换到root账户

2.1 新建隐藏目录存放自定义命令脚本文件

这里选择在主目录下新建隐藏目录.mycmd

cd
mkdir .mycmd

2.2 将新建的目录配置环境变量

vim ~/.bashrc
# 末尾插入一行
export PATH="$PATH:~/.mycmd"
# 使修改立刻生效
source ~/.bashrc

在这里插入图片描述

2.3 取别名的方式简化已有命令

就是在~/.bashrc文件里面加上一些取别名的命令

vim ~/.bashrc

修改或加上下面这些命令

#alias rm='rm -i' # rm命令太可怕了,修改为自定义的放入回收站的逻辑
alias rm='mrm'
alias cp='cp -i'
alias mv='mv -i'
alias la='ls -lah'
alias lt='ls -t'
alias lr='ls -r'
alias l='ls -CF'
alias clc='clear'
alias cls='clear'
alias note='cat /root/.mycmd/note.txt | less'
alias toTrash='source toTrash'
alias toJdk='source toJdk'
alias toTomcat='source toTomcat'
alias toCmd='source toCmd'
alias vm='vim ~/.mycmd/my.txt'

使修改生效:

source ~/.bashrc

2.4 编写自定义命令脚本

现在在.mycmd目录里面写一些脚本文件就成了自定义命令了,部分需要source为前缀的命令还需要借助2.3取别名的方式结合使用

注意给所有脚本赋予执行权限

cd ~/.mycmd
chmod +x ./*
ls

在这里插入图片描述

  • mrm

放入回收站,需要新建一个目录作为回收站目录

mkdir -p /root/.local/share/Trash/files
if test $# -eq 0thenecho "rm命令至少需要一个参数-文件名或文件夹名!"
elsewhile [ $# != 0 ]domv $1 /root/.local/share/Trash/files if [ $? != 0 ]thenechoecho "$1删除失败!"echo "参考:"echo "    1.请确保文件存在!"echo "    2.权限问题请改用srm命令!"exit 1fiecho "$1已放入回收站!"shiftdone
fi
  • toTrash
cd /root/.local/share/Trash/files
  • toCmd
cd ~/.mycmd
  • toJdk
cd /usr/local/jdk1.8.0_171/
  • toTomcat
cd /usr/local/apache-tomcat-7.0.57
  • tomcatStart
/usr/local/apache-tomcat-7.0.57/bin/startup.sh
  • tomcatShutdown
/usr/local/apache-tomcat-7.0.57/bin/shutdown.sh
  • vb
vim ~/.bashrc
  • lsJdk
ls /usr/local/jdk1.8.0_171/
  • lsTomcat
ls /usr/local/apache-tomcat-7.0.57
  • lsTrash
ls /root/.local/share/Trash/files
  • listport

如果防火墙是打开的,可以用来查看哪些接口是开着的

firewall-cmd --zone=public --list-ports
  • my
cat ~/.mycmd/my.txt

其中my.txt可以写一些自己的备忘

回收站目录:
/root/.local/share/Trash/filesjdk安装目录:
/usr/local/jdk1.8.0_171/tomcat安装目录:
/usr/local/apache-tomcat-7.0.571). 分页查询Tomcat的日志信息
more /usr/local/apache-tomcat-7.0.57/logs/catalina.out2). 查询Tomcat日志文件尾部的50行记录
tail -50 /usr/local/apache-tomcat-7.0.57/logs/catalina.out3). 动态查看Tomcat日志信息,调试用
tail -f /usr/local/apache-tomcat-7.0.57/logs/catalina.out4). 查看tomcat系统进程
ps -ef|grep tomcatkill也可以关闭tomcat
kill命令是Linux提供的用于结束进程的命令,-9表示强制结束 52016是上面ps命令查找的进程id
kill -9 52016开放指定端口: 其中8080是想要开放的端口号 (需要重新加载生效)
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent关闭指定端口: 其中8080是想要关闭的端口号 (需要重新加载生效)
firewall-cmd --zone=public --remove-port=8080/tcp --permanent立即生效(重新加载)port
firewall-cmd --reload查看开放端口
firewall-cmd --zone=public --list-ports查询当前系统中安装的所有软件 (类似windows控制面板->卸载程序)
rpm -qa查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mysql卸载软件
rpm -e --nodeps  软件名称
卸载 mariadb
rpm -e --nodeps  mariadb-libs-5.5.68-1.el7.x86_64mysql安装目录:
/usr/local/mysql升级现有软件及系统内核
yum update查看mysql服务状态
systemctl status mysqld启动mysql服务
systemctl start mysqld停止mysql服务
systemctl stop mysqld可以设置开机时启动mysql服务,避免每次开机启动mysql。执行如下指令:
systemctl enable mysqld查看已经启动的服务:
netstat -tunlp我们可以通过如下两种方式,来判定mysql是否启动:
查看mysql的服务信息:
netstat -tunlp | grep mysql
查看mysql进程:
ps -ef | grep mysql
mysql日志:
/var/log/mysqld.log登录mysql: 输入下面指令后直接回车,会提示你输入密码,再输入密码回车即可
mysql -uroot -p修改密码:
设置密码长度最低位数:
set global validate_password_length=4;
设置密码安全等级低,便于密码可以修改成root、1234 这种
set global validate_password_policy=LOW;
设置密码为1234
set password = password('1234');开启外部访问权限: root/1234 分别是被授权用户的用户名和密码
grant all on *.* to 'root'@'%' identified by '1234';
flush privileges;修改文件编码为u8,解决cat乱码处理
iconv -f cp936 -t utf-8 旧文件名  > 新文件名# 主库
mysql -uroot -p1234
GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';
show master status;# 从库
stop slave
change master to master_host='192.168.141.100',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000003',master_log_pos=154;
start slave;
show slave status\G;# 全局查找
find / -iname "auto.*"# 查看nginx版本
nginx -v# 检查nginx配置文件
nginx -t# 重新加载nginx配置文件
nginx -s reload# 启动nginx (默认80端口)
nginx# 停止nginx
nginx -s stop# 启动docker
systemctl start docker
# 停止docker服务
systemctl stop docker
# 重启docker服务
systemctl restart docker
# 查看docker服务状态
systemctl status docker# 查看docker下的镜像(死镜像文件)
docker images# 查看docker下的容器 (活的运行的隔离进程)
docker ps
# 查看所有容器及其状态(运行、暂停、停止)
docker ps -a# 利用docker ps -a 命令查看到的container id 可以启动停止的容器
docker start c_id
# 启动(已经创建好了的)容器  后面是容器id
docker start cd6a833208d2# 删除一个容器(不会删除镜像)
docker rm# 选择性只展示几行
docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Image}}\t{{.Status}}"

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

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

相关文章

学习 C++ 一定要搭配 Linux 吗?

学习C并不一定非要搭配Linux,但使用Linux环境进行学习和开发确实有其独特的优势,尤其对于深入理解和实践某些高级主题及特定领域的开发工作。以下是关于是否需要搭配Linux学习C的详细分析: 为了帮助您更好地入门并深入掌握C,我们精…

PLC的大脑和心脏——CPU及西门子S7-1200CPU分类、CPU型号及端子接线图示例

CPU不断地采集输入信号,执行用户程序,刷新系统的输出。 根据供电方式和输入/输出方式的不同,西门子S7-1200 CPU分为3类,如下图1。 图1 CPU的分类 第1对字母,表示CPU的供电方式,AC(Alternating…

代码随想录第25天|216.组合总和III 17.电话号码的字母组合

216.组合总和III 216. 组合总和 III - 力扣(LeetCode) 代码随想录 (programmercarl.com) 和组合问题有啥区别?回溯算法如何剪枝?| LeetCode:216.组合总和III_哔哩哔哩_bilibili 找出所有相加之和为 n 的 k 个数的组…

【KingSCADA】播放语音

1.函数介绍 PlaySound(string strWaveFileName, int nMode);下面是官方帮助文档中的解释: 2.生成语音文件 3.使用脚本播放音频文件 将音频文件存放在工程目录下面,我存放在了…\Resources\文件夹下: 我简单的写了一个定时1分钟播放一次语…

Fluent循环流动案例(模拟循环泵,含换热、散热、VOF、UDF)

在此特意记录下循环通道的fluent思路和参数设置 该案例中,主要关注的是催化剂域的温度变化情况,因此需要监控的是温度的变化曲线,关于泵如何进行模拟,这里有两种思路,一种是用风扇代替泵,优点是整个流体域基…

HarmonyOS ArkTS 骨架屏加载显示(二十五)

目录 前言1、骨架屏代码显示2、代码中引用3、效果图展示 前言 所谓骨架屏,就是在页面进行耗时加载时,先展示的等待 UI, 以告知用户程序目前正在运行,稍等即可。 等待的UI大部分是 loading 转圈的弹窗,有的是自己风格的小动画。其实…

武汉大学开设 “雷军班”:计算机专业、今年招收 15 名本科生。武汉大学已经联合小米成立了机器系

更多精彩内容在公众号。 3月25日,武汉大学官方网站发布了一则新闻,报道了校长张平文对计算机学院的调研活动。在报道中,张平文校长特别强调了关于“雷军班”及机器人系的发展规划。他表示,希望计算机学院能够立足于更高层次&#…

【python从入门到精通】-- 第三战:输入输出 运算符

🌈 个人主页:白子寰 🔥 分类专栏:python从入门到精通,魔法指针,进阶C,C语言,C语言题集,C语言实现游戏👈 希望得到您的订阅和支持~ 💡 坚持创作博文…

前端虚拟滚动列表 vue虚拟列表

前端虚拟滚动列表 在大型的企业级项目中经常要渲染大量的数据,这种长列表是一个很普遍的场景,当列表内容越来越多就会导致页面滑动卡顿、白屏、数据渲染较慢的问题;大数据量列表性能优化,减少真实dom的渲染 看图:绿色…

Prometheus +Grafana +node_exporter可视化监控Linux + windows虚机

1、介绍 背景:需要对多台虚机进行负载可视乎监控,并进行及时的报警 2、架构图 node_exporter :主要是负责采集服务器的信息。 Prometheus :主要是负责存储、抓取、聚合、查询方面。 Grafana : 主要是…

Pandas | value_counts() 的详细用法

value_counts() 函数得作用 用来统计数据表中,指定列里有多少个不同的数据值,并计算每个不同值有在该列中的个数,同时还能根据指定得参数返回排序后结果。 返回得是Series对象 value_counts(values,sortTrue, ascendingFalse, normalizeFal…

SSTI 服务器端模板注入(Server-Side Template Injection)

1.Web_python_template_injection {{}}是变量包裹标识符,里面存放的是一个变量,当你输入 http://61.147.171.105:55121/{{8*8}} 执行成功,说明存在模版注入。接下来,开始想办法编代码拿到服务器的控制台权限 。 首先&#xff0c…

unity 打包安卓错误汇集

Failed to find target with hash string "android-34’ in: D:Pr 他说找不到sdk34level的我用as打开后卸载又重装,最后解决了 我放到Plugins/Android/下面的Java代码没有被编译 这个不知道为什么。我故意把代码写的有问题,会报错那种&#xff…

Java中常见的锁策略

目录 乐观锁 vs 悲观锁 悲观锁: 乐观锁: 重量级锁 vs 轻量级锁 ⾃旋锁(Spin Lock) 公平锁 vs 非公平锁 可重⼊锁 vs 不可重入锁 读写锁 乐观锁 vs 悲观锁 悲观锁: 总是假设最坏的情况,每次去拿数据的时候都认为别…

AES加密解密算法

一,AES算法概述 AES属于分组加密,算法明文长度固定为128位(单位是比特bit,1bit就是1位,128位等于16字节) 而密钥长度可以是128、192、256位 当密钥为128位时,需要循环10轮完成加密&#xff0…

【Threejs基础教程-光影篇】5.2 Threejs 阴影系统

5.2 Threejs阴影系统 学习ThreeJS的捷径在用光影系统之前threejs是实时光影web端目前没有优质的实时光影实时光影会大幅增加渲染压力没有独显的电脑不建议添加实时光影 阴影配置什么样的灯光可以产生阴影什么样的物体可以产生阴影和接受阴影注意开启阴影渲染灵活运用阴影 平行光…

判断一个数据能否同时被3和5整除

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;int a 0;//提示用户printf("请输入一个整数\n");//获取用户输入数据&#xff1b;scanf("%d", &am…

Spring Boot项目启动过程中为什么日志打印没有显示完整包名呢?

一、前言 不知道大家注意过没有&#xff0c;在Spring Boot项目启动过程中日志打印并没有显示完整的报名&#xff0c;而是显示一些o.a.c&#xff0c;o.s.web形式的包名&#xff0c;如下图&#xff1a; 这是为什么呢&#xff1f; 二、原理 首先&#xff0c;我们先看一下Spring…

WordPress AutomaticPlugin SSRF漏洞复现(CVE-2024-27954)

0x01 产品简介 WordPress是一款免费开源的内容管理系统(CMS),最初是一个博客平台,但后来发展成为一个功能强大的网站建设工具,适用于各种类型的网站,包括个人博客、企业网站、电子商务网站等,并逐步演化成一款内容管理系统软件。 0x02 漏洞概述 WordPress AutomaticPlu…

01-XML-04XML处理

XML处理 DOM DOM解析要求解析器将整个XML文件全部加载到内存中&#xff0c;生成一个Document对象。 优点&#xff1a;元素和元素之间保留结构&#xff0c;关系&#xff0c;可以针对元素进行增删改查操作。 缺点&#xff1a;如果XML文件过大&#xff0c;可能会导致内存溢出。SA…