[linux]mark-tool

news/2024/10/7 18:28:18

前言

在远程连接到linux进行操作时,经常要切换目录,有些目录切换频次较高,因此写了个shell工具,用于收藏目录、切换目录等。也不需要安装,直接添加脚本即可。

配置

首先声明脚本是基于bash shell,zsh和fish未经测试。

  1. 编辑文件~/.bash_custom_functions,添加以下内容
mark(){local markfile="$HOME/.mark"if [ ! -f ${markfile} ]; thenecho "${markfile} is not exist, create it."touch ${markfile}ficase $1 inl)cat -n ${markfile};;d)# deleteif [ "x" == "x$2" ]; thenecho "need a sequence number"return 1fiif [ $2 -lt 0 ] || [ $2 -gt $(wc -l < ${markfile}) ]; thenecho "invalid sequence number"return 1fised -i "$2d" ${markfile};;a)# add / appendlocal new_mark=$(pwd)local tmp_grep=$(grep ${new_mark} ${markfile})if [ "x" == "x${tmp_grep}" ]; thenecho "mark current dirname: ${new_mark}"echo ${new_mark} >> ${markfile}elseecho "Warning! Duplicate mark"fi;;c)# cdif [ "x" == "x$2" ]; thenecho "need a sequence number"return 1fiif [ $2 -lt 0 ] || [ $2 -gt $(wc -l < ${markfile}) ]; thenecho "invalid sequence number"return 1filocal target_dir=$(sed -n "$2p" ${markfile})if [ ! -d ${target_dir} ]; thenecho "${target_dir} not found"return 1ficd ${target_dir};;*)echo "Options: l(ist), a(dd), d(elete), c(hange)"esac
}
  1. ~/.bashrc中追加以下内容以引入上一步的文件
if [ -f ~/.bash_custom_functions ]; then. ~/.bash_custom_functions
fi
  1. source生效,或者重建shell会话
source ~/.bashrc

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

大模型在传统行业应用再思考

前言 上周去杭州开人工智能研讨会之前,写了一篇文章《大模型是连接主义的胜利吗?》。这篇文章实验了大模型对复杂规则的推理能力,总结了两个观点:不能过于迷信大模型的能力,它并不是万能的。大模型基于相关性,不是因果性。它需要传统的机理模型、符号推理等弥补自身缺陷。…

2. Mybatis 入门程序

1. Mybatis 入门程序开发步骤 1.1 数据库表的创建准备数据库表:数据库:north_mybatis , 汽车表 t_car,字段包括:id:主键(自增)【bigint】 car_num:汽车编号【varchar】 brand:品牌【varchar】 guide_price:厂家指导价【decimal类型,专门为财务数据准备的类型】 prod…

加入我们:死神永生服

微信:ClassIn:洛谷: https://www.luogu.com.cn/team/79116

ACCESS 窗体的模式属性只能同时存在一个

这是我实际工作中遇到的问题.两个窗体同时设置了"模式"属性为"是",预想中的结果是左边最后弹出的数据表窗体为最上层窗体.结果左右两个窗体同级了,能点左,也能点右.当然主窗体不能点是正确的. 解决思路:这明显就是"模式"冲突了.所以我们设置成只…

避免 OOMKilled:在 Kubernetes 环境中优化 Java 进程的内存配置

避免 OOMKilled:在 Kubernetes 环境中优化 Java 进程的内存配置 DevOps云学堂译 奇妙的Linux世界 2024-06-10 09:53 重庆 听全文 公众号关注 「奇妙的 Linux 世界」设为「星标」,每天带你玩转 Linux !管理 Kubernetes Pod 中运行的 Java 进程的内存使用情况比人们想象的更具…

手绘二维码

从头把一个字符串变成二维码看到二维码,很容易猜到黑白相间的小方格就是二进制比特。那么这些比特是怎么得到的?小方格又是按照什么规则排布的?今天咱们就从零开始将一个 url 画成二维码。 考虑到大多数人可能不太了解二维码,所以先讲下基础概念。你也可以先看看左耳朵耗子…

1.Mybatis概述

1. Mybatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下, iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。iBatis一词来源于“internet”和“abatis”的…

计算机基础知识之浮点数的表示

目录定点数表示浮点数表示习题浮点数的规格化例题习题计算机基础知识之原码、补码、反码和移码:https://www.cnblogs.com/kohler21/p/18233912定点数表示 定点小数(纯小数)在计算机中的表示形式:注:在计算机中,定点小数主要用于表示浮点数的尾数,并没有高级语言数据类型与…