Linux进阶命令-echodatealias

news2024/9/24 17:44:26

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

经过上一章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.coloradmin.cn/o/2126151.html

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

相关文章

自然语言处理系列六十九》搜索引擎项目实战》搜索框架技术选型

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列六十九搜索引擎项目实战》搜索框架技术选型搜索…

大模型结合知识库问答应用第一次实践

大模型结合知识库问答应用第一次实践 这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】 记录一次用大模型LLM和向量数据库,搭建垂直领域的知识库问答实践。上文已经介绍了文本如…

第151天:红队APT-钓鱼篇邮件钓鱼SPF绕过自建邮件系统SwaksGophish

案例一:邮件钓鱼-前置知识 现在很多大型网站的邮件服务器已经做的很安全了,文中的很多方法感觉已经不适用,学习思路遇到公司自己搭建的邮件服务器可以尝试把 SPF 发件人策略框架( Sender Policy Framework )电子邮件认…

移植案例与原理 - utils子系统之file文件操作部件

往期知识点记录: 往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 startup子系统之syspara_lite系统属性部件 (1) startup子系统之syspara_lite系统属性部件 &#xff…

基于ssm+vue+uniapp的电影交流平台小程序

开发语言:Java框架:ssmuniappJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:M…

海康IPC摄像头通过国标28181方式接入带域名的视频监控接入平台,视频通道无法上传到视频监控平台,导致无法获取视频资源的问题解决

目录 一、问题背景 二、域名介绍 1、域名详解 2、域名与IP的区别 三、解决过程 1、检查设备能力 2、升级摄像头的版本 3、通过域名进行连接 4、在视频监控平台观察接入情况 四、解决结果 一、问题背景 视频监控接入平台部署在内网环境,摄像头在公网或在另一个局…

【Linux C | 终端设备】Linux下 tty、ttyS*、ttyAMA*、console 的区别,以及系统输出重定向(附带代码)

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰: 2024-09-11 …

QT实现TCP/UDP通信

服务器端&#xff1a; 客户端&#xff1a; 服务器&#xff1a; widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpServer> #include <QTcpSocket> #include <QList> #include <QMessageBox> #include <QDebug&…

哈喽GPT-4o,现代程序员提高编码能力的正确打开方式

目录 round 1&#xff1a;图片识别能力ChatGPT4oClaude3.5 Sonnet图片识别能力小结&#xff1a;图片识别能力&#xff0c;ChatGPT4o完胜。 round 2&#xff1a;代码能力ChatGPT4oClaude3.5 Sonnet代码能力小结&#xff1a;代码能力&#xff0c;Claude3.5 Sonnet小胜。 round 3&…

一个人,如何管理上百个污水处理站?

管理上百个污水处理站&#xff0c;无疑是一项复杂而艰巨的任务&#xff0c;它不仅要求管理者具备深厚的专业知识、卓越的组织协调能力&#xff0c;还依赖于先进的技术支持与科学的管理模式。以下几点策略&#xff0c;可为高效管理众多污水处理站提供参考框架&#xff1a; 1. 部…

Unity+LeapMotion2的使用

开始吧 导入步骤1.到官网下载软件并安装2.安装插件3.场景中添加检测管理器4.场景中添加手部模型 更多细节 导入步骤 1.到官网下载软件并安装 地址 重启电脑后连接设备 可以看到连接成功 2.安装插件 &#xff08;也可以看官方教程&#xff09; Project—>PackageManag…

9.9日记录

1.常见排序算法的复杂度 1.快速排序 1.1快速排序为什么快 从名称上就能看出&#xff0c;快速排序在效率方面应该具有一定的优势。尽管快速排序的平均时间复杂度与“归并排序”和“堆排序”相同&#xff0c;但通常快速排序的效率更高&#xff0c;主要有以下原因。 出现最差情况…

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板接触可能…

22. Revit API: 几何对象(三)- Solid操作

一、前言 几何对象中&#xff0c;Face就先跳过了&#xff0c;这里讲讲如何使用 Revit API 中 Solid 操作相关类。 使用SolidUtils&#xff0c;主要是复制和移动。使用GeometryCreationUtilities&#xff0c;生成Solid。使用SolidSolidCutUtils和BooleanOperationsUtils&#…

Python 从入门到实战14(字符串相关操作)

我们的目标是&#xff1a;通过这一套资料学习下来&#xff0c;通过熟练掌握python基础&#xff0c;然后结合经典实例、实践相结合&#xff0c;使我们完全掌握python&#xff0c;并做到独立完成项目开发的能力。 上篇文章我们通过举例学习了字符串进行简单说明。今天继续讨论字符…

斗地主之顺子

题目描述 在斗地主扑克牌游戏中&#xff0c;扑克牌由小到大的顺序为:3,4,5.6,7.8,9,10,J,Q,K,A,2&#xff0c;玩家可以出的扑克牌阵型有:单张、对子、顺子、飞机、炸弹等。 其中顺子的出牌规则为:由至少5张由小到大连续递增的扑克牌组成&#xff0c;且不能包含2。 例如:(3.4.…

【Windows系统工具】dll综合解决工具,解锁专业版功能!

电脑上经常会出现dll文件丢失的情况&#xff0c;那么面对这种情况&#xff0c;小白用户应该如何应对并且解决呢&#xff1f; 这时&#xff0c;不得不提出dll综合解决工具的重要性了。虽然电脑上有很多自带的工具可以使用&#xff0c;但是方法步骤都比较复杂&#xff0c;很多小白…

day4 QT

作业 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget), speech(new QTextToSpeech) {ui->setupUi(this);id startTimer(1000); }Widget::~Widget() {delete ui; }void Widget::tim…

从C语言过渡到C++

&#x1f4d4;个人主页&#x1f4da;&#xff1a;秋邱-CSDN博客☀️专属专栏✨&#xff1a;C &#x1f3c5;往期回顾&#x1f3c6;&#xff1a;单链表实现&#xff1a;从理论到代码-CSDN博客&#x1f31f;其他专栏&#x1f31f;&#xff1a;C语言_秋邱的博客-CSDN博客 目录 ​…

常用的 CMD 指令及其功能

目录 1&#xff1a;Win R命令。 2&#xff1a;cmd命令。 3&#xff1a;盘符名: 命令。 4: mkdir命令。 5&#xff1a;dir命令。 6: dir 名称。 7&#xff1a;Tab。 8&#xff1a;cd name。 9: copy con 文件的名字。 10: type 文件名。 11: cd .. 命令。 12&a…