Linux进阶命令-echodatealias

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

经过上一章Linux日志的讲解,我们对Linux系统自带的日志服务已经有了一些了解。我们接下来将讲解一些进阶命令,主要从以下几个方面来讲解:一些系统操作,系统查看处理,Linux文本处理,逻辑判断,重定向,网络传输,服务启动,文件句柄等内容。通过这些操作,让你对Linux的操作更加得心应手,具体分成以下章节进行讲解:

Linux进阶命令-echo&date&alias(本章节)

Linux进阶命令-top

Linux进阶命令-ps&kill

Linux进阶命令-sort&wc

Linux进阶命令-sed&split

Linux进阶命令-awk&uniq

Linux进阶命令-逻辑或&逻辑与

Linux进阶命令-重定向

Linux进阶命令-scp&rsync

Linux进阶命令-rsync-daemoon

Linux进阶命令-nohup&screen

Linux进阶命令-lsof

Linux进阶命令-小结

echo

我们在前面讲Linux基础软件-软件安装的时候,在编译安装的时候使用echo $? 来判断上一个命令的执行结果,0是正常,其他则是不正常。其实任何命令只要执行成功,使用echo $?都应该返回0。还在讲Linux日常运维的环境变量的时候,通过echo $PATH来打印变量。

echo 是在Linux和Unix系统中常用的命令,主要用于在终端输出指定的文本或变量值。它也可以用来打印简单的文本消息或变量的值。

基本语法

echo [OPTION] [STRING]
  • OPTION 可选,用于控制输出格式或行为。

  • STRING 通常是要输出的文本或变量。

常用选项

  • -n 不会自动换行,输出后不添加换行符。

  • -e 识别转义字符,如 \n 表示换行符。

示例

1.输出一条简单的消息:

echo "Hello, World!"

2.输出变量的值:

name="Alice"
echo "Hello, $name"

3.不换行输出:

echo -n "This is a "
echo "single line."

4.识别转义字符:

echo -e "First line\nSecond line"

5.输出特殊字符:

echo "The cost is \\$10"   # 输出:The cost is \$10

应用场景

  • 在脚本中用于输出调试信息或提示消息。

  • 用于打印变量值,方便调试和查看内容。

  • 结合重定向符号(> 和 >>)将输出内容写入文件,后面将单独将重定向。

date

在Linux基础软件-ntp里面我们讲过在没有ntp或者chrony的时候可以通过date来设置时间。

date 命令在Linux和Unix系统中用于显示或设置系统的日期和时间。它可以输出当前的日期时间,或者根据指定的格式来格式化日期时间的输出。

基本用法

date [OPTION]... [+FORMAT]
  • OPTION 是可选的选项,用于控制输出格式或行为。

  • +FORMAT 是用于指定日期时间输出格式的字符串。

常用选项

  • -d, --date=STRING:显示给定日期时间的格式。

  • -u, --utc, --universal:显示UTC时间(协调世界时)。

  •  -s, --set=STRING :设置时间或者日期。

  • +%FORMAT:用指定格式输出日期时间。

格式化字符串

+FORMAT 中,可以使用以下特殊的格式化字符串来定义输出的日期时间格式:

  • %Y:四位数的年份(如:2024)。

  • %m:两位数的月份(01 到 12)。

  • %d:两位数的日(01 到 31)。

  • %H:24小时制的小时数(00 到 23)。

  • %M:两位数的分钟数(00 到 59)。

  • %S:秒数(00 到 60)。

  • %Z:时区(例如:UTC、GMT、PST)。

示例

1.显示当前日期时间:

date

输出类似:Tue Aug 7 17:19:15 UTC 2024

2.以特定格式输出当前日期时间:

date +"%Y-%m-%d %H:%M:%S"

输出类似:2024-08-07 17:19:15

3.显示UTC时间:

date -u

4.设置时间:

#设置日期
date -s 2024-08-15
#设置时间
date -s 00:54:00

这个操作要特别注意,尤其是在生产环境。

应用场景

  • 在脚本中记录日志,使用 date 命令添加时间戳。

  • 用于文件名的时间戳,例如备份文件。

  • 调试和分析日志文件时,确定特定事件发生的时间。

  • 在需要精确计时和定期任务的自动化脚本中使用。

这里补充一个基础知识,在Linux服务器里面还有个时间Unix时间戳或POSIX时间。它表示的是自1970年1月1日00:00:00 UTC以来经过的秒数。Unix时间戳通常是一个整数值​​​​​​​

#显示当前unix时间
date +%s
#将unix时间转换为人类可识别时间
date -d @1723655358

alias

在Linux基础命令(一),我们曾经说过有一个命令ll,实际上是ls -l。他们的实现方式实际就是alias。当然还有很多命令默认都是有alias的。

alias 命令用于在命令行中创建命令别名,允许用户为常用命令或命令序列定义简短的替代名称。这样做可以显著提高命令行操作的效率和便捷性。

基本语法

alias [name[=value] ...]
  • name 是要定义的别名,可以是任何不包含空格或特殊字符的字符串。

  • value 是要替代的命令或命令序列。如果没有提供 value,则显示当前的别名列表。

示例

1.定义简单的别名:

alias ll='ls -l'

这条命令将 ll 定义为 ls -l 的别名。以后在命令行中输入 ll 就会执行 ls -l 命令,显示详细的文件列表。

2.定义带参数的别名:

alias grep='grep --color=auto'

这样,使用 grep 命令时会自动启用彩色输出。

3.查看当前定义的所有别名:

alias

这条命令会列出当前所有已定义的别名及其对应的命令。

4.删除别名:

unalias ll

这会删除之前定义的 ll 别名,恢复原始的 ls -l 行为。

永久生效

在终端中定义的别名仅在当前会话中有效,关闭终端后会丢失。如果希望别名永久生效,可以将其添加到用户的 shell 配置文件中,比如:

  • 对于 bash shell,可以将别名定义添加到 ~/.bashrc 文件中。

然后使用 source ~/.bashrc 命令使其立即生效,或者重新启动终端。当然也可以根据我们前面Linux日常运维-环境变量(env)放置到合适的位置。

应用场景

  • 简化命令行操作: 将常用的复杂命令或长命令序列定义为简单易记的别名,减少输入量。

  • 增强命令功能: 向命令添加默认参数或选项,以便于特定需求的快速调用。

  • 提高工作效率: 根据个人工作流程和使用习惯优化命令行环境,使得操作更高效。

总结

1.这小节讲了3个命令,其中echo 主要用途在shell里面就是通过$?确认上个命令执行结果和通过">",">>"写入到文件里面,还有就是shell脚本里面打印输出到控制台,方便我们查看脚本执行过程。

2.date主要用途在shell里面就是设置时间,在shell里面就是用于变量方便记录或者操作命令执行的时间。

3.在执行date -d 进行转换时间的时候要注意,不要用错成date -s了,这个是有亲身经历过生产故障。

3.alias主要通途就是让我们对某系常用命令进行改造,让我们操作更简单。​​​​​​​

#通过kc xx就可以查询pod
alias "kc=kubectl get pod -A|grep"

图片

运维小路

一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!

关注微信公众号《运维小路》获取更多内容。

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

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

相关文章

JAVA中获取类的超类(父类)或接口的class类型

一、前言 这里所说的超类&#xff08;父类&#xff09;或接口&#xff0c;指的就是某个类继承了一个类或实现了N个接口。 比如ArrayList&#xff0c;它继承了一个类&#xff08; java. util. AbstractList<E> &#xff09;&#xff0c;这时候AbstractList就称为ArrayLi…

如何让人工智能训练更快

影响人工智能训练时间的因素 在深度学习训练中&#xff0c;训练时间的计算涉及到多个因素&#xff0c;包括 epoch 数、全局 batch size、微 batch size、计算设备数量等。下面是一个基本的公式来说明这些参数之间的关系&#xff08;注意&#xff0c;这只是一个基本的说明公式&…

ctfshow-文件包含

web78 <?phpif(isset($_GET[file])){$file $_GET[file];include($file); }else{highlight_file(__FILE__); } 判断是否存在file参数 如果存在 将包含这个参数值 文件 php://filter可以获取指定文件源码。当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执…

Jmeter终极线程组“Ultimate Thread Group“如何使用?

1、安装,点击"选项"&#xff0c;再点击"Plugins Manager"&#xff0c;下载"Custom Thread Groups" 2、添加"jpgc - Ultimate Thread Group" 3、"jpgc - Ultimate Thread Group"使用

DC 板 boot 测 nor 兼容性记录(qspi )

DC 板 boot 测 nor 兼容性记录&#xff08;qspi &#xff09; 软件问题&#xff1a; 1、DC板在跑 qspi时&#xff0c;在跑ddr 初始化部分需要修改以下参数&#xff0c;否则会在fsbl stage1 或者 stage 3 出错。 Board配置选 ad101_v10&#xff1b; 2、由于socket与DC板接触可能…

【springboot】父子工程项目搭建

父工程创建 1.新建一个spring项目 2.选择合适的springboot版本&#xff0c;点击【完成】&#xff0c;即创建父工程完毕 3.删除父工程中无用文件&#xff1a;src 创建子工程模块 1.右键项目名->新建&#xff08;news&#xff09;->模块&#xff08;Module&#xff09;…

【linux-Day2】linux下的基本指令

【linux-Day2】linux下的基本指令 一键查看操作系统的重要地位linux下的基本指令&#x1f4e2;ls&#xff1a;显示当前目录下所有的子目录和文件&#x1f4e2;pwd&#xff1a;显示用户当前所在的目录&#xff0c;在windows中&#xff0c;相当于显示当前目录的绝对路径。&#x…

Oracle绑定变量窥视与自适应游标共享

一.Oracle的绑定变量窥视与自适应游标共享 创建test表&#xff0c;列status存在2个值&#xff0c;有数据倾斜&#xff0c;在列status create table test as select rownum id,DBMS_RANDOM.STRING(A,12) name,DECODE(MOD(ROWNUM,500),0,Inactive,Active) status from all_obj…

2024最新精选文章!分享5款论文ai生成软件

在2024年&#xff0c;AI论文生成软件的出现极大地提升了学术写作的效率和质量。这些工具不仅能够帮助研究人员快速生成论文草稿&#xff0c;还能进行内容优化、查重和排版等操作。以下是五款值得推荐的AI论文生成软件&#xff0c;其中特别推荐千笔-AIPassPaper。 ### 千笔-AIPa…

【Jupyter Notebook】汉化

1.打开:Anaconda Prompt 2.输入:"activate Zhui01"(注意&#xff1a;Zhui01是刚创建的环境名字) activate Zhui01 3.输入:"pip install jupyterlab-language-pack-zh-CN" pip install jupyterlab-language-pack-zh-CN 4.打开:Jupyter Notebook 5.点击&q…

【稀疏矩阵】使用torch.sparse模块

文章目录 稀疏矩阵的格式coocsrcsc Construction of Sparse COO tensorsConstruction of CSR tensorsLinear Algebra operations&#xff08;稀疏与稠密之间混合运算&#xff09;Tensor methods and sparse&#xff08;与稀疏有关的tensor成员函数&#xff09;coo张量可用的ten…

E32.【C语言 】练习:蓝桥杯题 懒羊羊字符串

1.题目 【问题描述】 “懒羊羊”字符串是一种特定类型的字符串&#xff0c;它由三个字符组成&#xff0c;具有以下特点: 1.字符串长度为 3. 2.包含两种不同的字母。 3.第二个字符和第三个字符相同 换句话说&#xff0c;“懒羊羊”字符串的形式应为 ABB&#xff0c;其中A和B是不…

Python去中心化身份验证指南

随着区块链技术的发展,去中心化身份验证系统成为了保护个人数据安全和确保数字身份不被篡改的重要工具。本文将介绍如何利用Python和区块链技术构建一个简单的去中心化身份验证系统,包括基本概念、实现步骤和代码示例。 什么是去中心化身份验证系统? 去中心化身份验证系统…

SpringBoot学习(8)RabbitMQ详解

RabbitMQ 即一个消息队列&#xff0c;主要是用来实现应用程序的异步和解耦&#xff0c;同时也能起到消息缓冲&#xff0c;消息分发的作用。 消息中间件最主要的作用是解耦&#xff0c;中间件最标准的用法是生产者生产消息传送到队列&#xff0c;消费者从队列中拿取消息并处理&…

【网易低代码】第3课,页面表格删除功能

你好&#xff01; 这是一个新课程 CodeWave网易低代码 通过自然语言交互式智能编程&#xff0c;同时利用机器学 习&#xff0c;帮助低代码开发者进一步降低使用门槛、提高应用开发效率 【网易低代码】第3课&#xff0c;页面表格删除功能 1.拖拽组件link链接到表格中&#xff0c…

一文读懂在线学习凸优化技术

一文读懂在线学习凸优化技术 在当今的数据驱动时代&#xff0c;机器学习算法已成为解决复杂问题的关键工具。在线学习凸优化作为机器学习中的一项核心技术&#xff0c;不仅在理论研究上具有重要意义&#xff0c;还在实际应用中展现出巨大的潜力。本文将深入浅出地介绍在线学习…

初识C++|继承

&#x1f36c; mooridy-CSDN博客 &#x1f9c1;C专栏&#xff08;更新中&#xff01;&#xff09; 目录 1. 继承的概念及定义 1.1 继承的概念 1.2 继承定义 1.2.1 定义格式 1.2.2 继承父类成员访问方式的变化 1.3继承类模板 2. 父类和子类对象赋值兼容转换 3. 继承中的…

使用docker配置wordpress

docker的安装 配置docker yum源 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo下载最新版本docker sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-…

arxiv 首次投稿注意事项记录

文章目录 注册用教育邮箱&#xff0c;不用背书latex&#xff1a; 主tex和bib文件放在最外层&#xff0c;重命名为arxiv.tex和arxiv.bib &#xff08;没测试过不重命名会怎么样&#xff09;在overleaf右上方点submmit&#xff0c;选arxiv&#xff08;这样会自动生成一个bbl文件&…

苹果的“AI茅”之路只走了一半

今年苹果发布会最大的亮点&#xff0c;也许是和华为“撞档”&#xff0c;又或者是替腾讯“发布”新手游&#xff0c;但肯定不是iPhone 16。 9月10日&#xff0c;苹果秋季新品发布会与华为见非凡品牌盛典相继举行&#xff0c;iPhone 16系列也与HUAWEI Mate XT同日发布。 不过&…