用到的shell编程命令整理

Bash Shell控制台终端命令合集 最近整理了一下Bash Shell终端的命令,以备后续查用。 阅读详情

以下包括:awk、xargs、nohup、sleep、history时间、date、sed、wc、expr、tee 

 

awk

例: ps -ef|grep java|grep flume|awk '{print $2;}'|xargs kill -9

讲解:AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。

  awk '{[pattern] action}' {filenames} # 行匹配语句 awk '' 只能用单引号

 

    $ awk '{print $1,$4}' log.txt
https://www.runoob.com/linux/linux-comm-awk.html

xargs

例: ps -ef|grep java|grep flume|awk '{print $2;}'|xargs kill -9

讲解:xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。

xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。

xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。

 

find /sbin -perm +700 |ls -l       #这个命令是错误的
find /sbin -perm +700 |xargs ls -l   #这样才是正确的

xargs 其他应用

假如你有一个文件包含了很多你希望下载的 URL,你能够使用 xargs下载所有链接:

# cat url-list.txt | xargs wget -c

https://www.runoob.com/linux/linux-comm-xargs.html

nohup

nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。

nohup命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

2>&1 解释:

将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 runoob.log 文件中。

  • 0 – stdin (standard input,标准输入)
  • 1 – stdout (standard output,标准输出)
  • 2 – stderr (standard error,标准错误输出)

sleep

sleep 1 ##睡眠1秒
sleep 1s ##睡眠1秒
sleep 1m ##睡眠1分
sleep 1h ##睡眠1小时

#!/bin/sh
/opt/tomcat/bin/shutdown.sh
sleep 3  #等3秒后执行下一条
/opt/tomcat/bin/startup.sh

history 增加时间显示

https://blog.youkuaiyun.com/hello_java_lcl/article/details/107337226

date

1.SHELL脚本 中date的使用

#(1)最简单的使用

echo "今天日期是: `date +%Y%m%d`"  

今天日期是:20180824

#(2)时间变量的使用

#!/bin/bash

echo "时间是:`date '+%Y%m%d %H:%M:%S'`"

echo "时间是:`date '+%Y-%m-%d %H:%M:%S'`"

时间是:20180824 08:11:17
时间是:2018-08-24 08:11:49

#(3)简单的shell脚本

#在当前目录下面创建当天日期的目录

##written by 2018-8-24

#!/bin/bash

guoch=`date +%Y%m%d`

mkdir ${guoch}

#(4)前一天的日期

#前一天的日期

#(今天是24号)

echo "`date -d "-1 day" +%d`"    

结果是:23

#前一小时

#当前是16点
echo "`date -d "-1 hour" +%H`"

结果是:15

#前一分钟

echo "`date -d "-1 min" +%M`"

#前一秒钟

echo "`date -d "-1 second" +%S`"

#(5)学习日期变量的简单应用

#!/bin/bash
##In this Script we will use variables
##Writen by 2018-08-24

d1=`date +%H:%M:%S`
echo "The Script begin at $d1"
echo "Now we will sleep 2s"
sleep 2  #休眠2秒
d2=`date +%H:%M:%S`
echo "The Script end at $d2"

 

功能:

#!/bin/bash
set -e
ret=$(cat ../tables_ruitong|wc -l) 

i=1

while [ $i -le $ret ]

do
        row=$(sed -n "$i,0p" ../tables_ruitong)

       ## do something

        i=`expr $i + 1`

done

 

sed

Linux sed 命令是利用脚本来处理文本文件。

sed 可依照脚本的指令来处理、编辑文本文件。

Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

 例子:row=$(sed -n "$i,0p" tables_1)

查看行:$i--变量,$i,0p -- 变量数字代表的当前行

语法

sed [-hnV][-e<script>][-f<script文件>][文本文件]

参数说明:

  • -e<script>或--expression=<script> 以选项中指定的script来处理输入的文本文件。
  • -f<script文件>或--file=<script文件> 以选项中指定的script文件来处理输入的文本文件。
  • -h或--help 显示帮助。
  • -n或--quiet或--silent 仅显示script处理后的结果。
  • -V或--version 显示版本信息。

动作说明:

  • a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
  • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
  • d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
  • i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
  • p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
  • s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

举例:

利用 sed 将 regular_express.txt 内每一行结尾若为 . 则换成 !

[root@www ~]# sed -i 's/\.$/\!/g' regular_express.txt
[root@www ~]# cat regular_express.txt 
runoob!
google!
taobao!
facebook!
zhihu-
weibo-

利用 sed 直接在 regular_express.txt 最后一行加入 # This is a test:

[root@www ~]# sed -i '$a # This is a test' regular_express.txt
[root@www ~]# cat regular_express.txt 
runoob!
google!
taobao!
facebook!
zhihu-
weibo-
# This is a test

由於 $ 代表的是最后一行,而 a 的动作是新增,因此该文件最后新增 # This is a test!

sed 的 -i 选项可以直接修改文件内容,这功能非常有帮助!举例来说,如果你有一个 100 万行的文件,你要在第 100 行加某些文字,此时使用 vim 可能会疯掉!因为文件太大了!那怎办?就利用 sed 啊!透过 sed 直接修改/取代的功能,你甚至不需要使用 vim 去修订!

 

wc

Linux wc命令用于计算字数。

利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。

语法

wc [-clw][--help][--version][文件...]

参数:

  • -c或--bytes或--chars 只显示Bytes数。
  • -l或--lines 只显示行数。
  • -w或--words 只显示字数。
  • --help 在线帮助。
  • --version 显示版本信息。

实例

使用 wc统计,结果如下:

$ wc testfile           # testfile文件的统计信息  
3 92 598 testfile       # testfile文件的行数为3、单词数92、字节数598 

其中,3 个数字分别表示testfile文件的行数、单词数,以及该文件的字节数。

如果想同时统计多个文件的信息,例如同时统计testfile、testfile_1、testfile_2,可使用如下命令:

wc testfile testfile_1 testfile_2   #统计三个文件的信息 

输出结果如下:

$ wc testfile testfile_1 testfile_2  #统计三个文件的信息  
3 92 598 testfile                    #第一个文件行数为3、单词数92、字节数598  
9 18 78 testfile_1                   #第二个文件的行数为9、单词数18、字节数78  
3 6 32 testfile_2                    #第三个文件的行数为3、单词数6、字节数32  
15 116 708 总用量                    #三个文件总共的行数为15、单词数116、字节数708 

expr

expr命令是一个手工命令行计数器,用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串。

语法

expr 表达式

表达式说明:

  • 用空格隔开每个项;
  • 用 / (反斜杠) 放在 shell 特定的字符前面;
  • 对包含空格和其他特殊字符的字符串要用引号括起来

实例

1、计算字串长度

> expr length “this is a test”
 14

2、抓取字串

> expr substr “this is a test” 3 5
is is

3、抓取第一个字符数字串出现的位置

> expr index "sarasara"  a
 2

4、整数运算

 > expr 14 % 9
 5
 > expr 10 + 10
 20
 > expr 1000 + 900
 1900
 > expr 30 / 3 / 2
 5
 > expr 30 \* 3 (使用乘号时,必须用反斜线屏蔽其特定含义。因为shell可能会误解显示星号的意义)
 90
 > expr 30 * 3
 expr: Syntax error

tee

Linux tee命令用于读取标准输入的数据,并将其内容输出成文件。

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

语法

tee [-ai][--help][--version][文件...]

参数:

  • -a或--append  附加到既有文件的后面,而非覆盖它.
  • -i或--ignore-interrupts  忽略中断信号。
  • --help  在线帮助。
  • --version  显示版本信息。

举例:

sh $path/sqoopjob_delete.sh 2>&1 | tee -ai /home/huser/sh_starts/logs/rtdata-sqoop_upload_`date +\%Y\%m\%d`.log

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Windows常用shell命令大全 基于鼠标操作的后果就是OS界面外观发生改变,就得多花学习成本。更主要的是基于界面引导Path与命令行直达速度是难以比拟的。另外Geek很大一部分是键盘控,而非鼠标流的。 阅读详情

相关推荐

【IPython使用技巧整理】内省功能历史命令执行Shell命令运行脚本导出为其他格式

学习教程(传送门)本人详解作者:王文峰,参加过 优快云 2020年度博客之星,《Java王大师王天师》公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯转载说明:务必注明来源(注明:作者:王文峰哦)【IPython使用技巧整理】内省功能历史命令执行Shell命令运行脚本导出为其他格式学习教程(传送门)学习教程(传送门)往期文章学习教程(传送门)1、掌握入门到进阶知识(持续写作中……

王大师企业官方博客 2264

Shell编程知识整理

Shell是用C语言编写的程序,能让用户访问操作系统内核服务,类似DOS下的command和cmd.exe。它兼具命令语言和程序设计语言的特性,Shell编程通常指编写Shell脚本,而非开发Shell自身。

zjl999666999的博客 1073

一位海外开发者的 OpenSPG KAG 实践分享

KAG 是一个以创建和操作知识图谱为核心的框架。知识图谱是数据之间相互关联的可视化和结构化表示,对于搜索引擎、推荐系统和机器学习等应用至关重要。KAG 的目标是提供一个强大的平台,使开发者能够:轻松构建图谱;通过增强算法丰富数据;集成人工智能,以进行更精确的推理。通过理解 KAG,可以明显看出,这个框架旨在帮助从初学者到专业开发者,在项目中创造更优的解决方案。它在简便性和集成方面的优势,使其成为下一代基于数据的应用程序的前景工具。

金融机器智能社区 3406

shell 编程基础

黑马程序员 Shell 编程笔记整理

weixin_41930950的博客 814

【Unity3D】RTS Engine 笔记一

RTS Engine 中配置一个新场景, 初步认识GameManager、设置地形以及配置地形网格搜索

ViYeye的博客 1652

带你一分钟了解电感与磁珠的区别

在电路设计中会经常使用到电感和磁珠,虽然在电路中的作用有所不同,但它们都属于磁性电子元器件,本文简单介绍下电感和磁珠的区别电感和磁珠电感和磁珠的结构主要由磁性材料金属线圈和外壳组成,具体结构如下图所示:电感磁珠结构图电感其实是金属线圈缠绕在磁芯上,而磁珠是在内部折叠后外围包裹着铁氧体磁性材料。电感器(Inductor)又称扼流器、电抗器、动态电抗器是储能器件,能够把电能转化为磁能而存储起来的元件。磁珠则是能量转换(消耗)器件,将流过他的高频信号以热能的形式消耗掉。

攻城狮鹏哥 1410

Linux Shell 命令

写本博客是为了巩固自己的基础加深记忆,为了以后忘记能够通过微博很快的查找Shell命令 。以下都是我从Ubuntu 和centOs版本的Linux系统收集过来的命令方式。两个版本命令会有稍许的差异,但大致命令都相同。在这里我就按照我收集的顺序整理这些命令,也就不细分那条命令是那个系统版本的了。 首先Shell命令是区分大小写,新手小白需要注意 帮助管理 通配符共有三个: "*'、"?“、”[]...

优快云556677的博客 1557

保姆级教程:用PCAN-View监控汽车CAN总线,从硬件连接到报文分析(附快捷键大全)

本文提供了一份详细的PCAN-View使用教程,涵盖从硬件连接到报文分析的全流程,特别适合汽车电子工程师和初学者。内容包括硬件准备、软件安装、核心功能操作、高级技巧及故障排查,并附有实用的快捷键大全,帮助用户高效监控和分析CAN总线数据。

weixin_42542669的博客 498

linux shell命令行及脚本编程实例详解_超全整理!这些Shell编程必备知识你都掌握了吗?...

正文最近很多粉丝咨询我,被问到了一些Shell编程的问题,看看大家能否答出来:1、shell脚本千千万,不知道从哪入手2、没经验缺方法,面试通不过、做事没头绪3、野路子、没人教自动化,做了几年基础运维,始终得不到成长4、想进入互联网大公司,不懂自动化运维,不懂DevOps,敲不开大门如果现在你大概率是一头雾水,建议要拿出6个小时的时间,参加一下吴光科老师《3天精进—Shell编程高级》训...

weixin_39678304的博客 205

30天入门 SAP BTP 开发系列之四:SAP BTP 控制台里 Global Account 的常规操作介绍

笔者前一篇文章,介绍了 SAP BTP 中 Global Account 的概念。本文咱们一起来看看 SAP BTP 控制台里,给 Global Account 开放了哪些操作功能。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 870

InfiniBand 与 RoCE 协议介绍

InfiniBand 是高性能互联的 “标杆”,以极致的低延迟、高可靠性适用于对性能要求苛刻的场景(如超算、大规模 AI 训练);而 RoCE 通过以太网实现 RDMA,平衡了性能与成本,成为数据中心和云计算的主流选择。两者均基于 RDMA 技术,核心目标是解决传统网络的 “CPU 瓶颈” 和 “延迟瓶颈”,推动高性能计算和分布式系统的发展。

jundao1997的专栏 714

Linux的经典shell命令整理

Linux的经典shell命令整理 1.删除0字节文件find -type f -size 0 -exec rm -rf {} \; 2.查看进程按内存从大到小排列ps -e -o “%C : %p : %z : %a”|sort -k5 -nr 3.按cpu利用率从大到小排列ps -e -o “%C : %p : %z : %a”|sort -nr 4.打印说cach...

denggezhu7173的博客 190

把 SAP Activate 六个阶段看透:从项目落地到 SAP BTP 扩展与 AI 运营的一体化实践

摘要: SAP Activate 方法论常被误解为简单的项目阶段划分,实则是一套将业务目标、标准流程、系统配置和持续运营串联的实施控制体系。其六个阶段(Discover至Run)构成价值递进的实施通道,核心交付集中在Prepare到Deploy阶段。Discover阶段通过DDA评估确立项目方向与范围,Prepare阶段聚焦可执行性准备,Explore阶段采用Fit-to-Standard工作坊进行需求分层,Realize阶段基于前期决策进行配置与扩展开发。该方法论强调标准化优先,差异化需求通过SAP BT

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2333

整理常用的Linux操作及shell命令

整理常用的Linux操作及shell命令 目录 整理常用的Linux操作及shell命令 1.系统级别命令基本操作和命令: 2.磁盘操作 3.用户和组的操作 4.文件操作 5.文件权限 6.打包tar原理 7.vi常用命令 8、man帮助手册 shell命令合集字母排序shell命令解释 1.系统级别命令基本操作和命令: Redhat 更改主机...

sh_c1314 2778

9篇5章2节:NHIS 数据库的常规数据下载

文章概述了 NHIS-Teen、NHPI NHIS 等补充性调查以及 2024 年 NHIS 数据资源的具体内容,包括问卷材料、技术文档和数据模块,为研究者高效、规范地使用 NHIS 数据提供参考框架。

MD Code 1440

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

常用 Linux 命令和 shell 脚本语言整理

常用的Linux命令和shell脚本语言。

m0_58017289的博客 1496

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Shell命令行操作--整理

 Linux shell 简介Linux shell指的是一种程序,有了它,用户就能通过键盘输入指令来操作计算机了。这种面向命令行的用户界面被称为 CLI(Command Line interface)。专业的 Linux用户认为Shell是一个非常有用的工具,学习 Linux时一定要学习Shell,至少要掌握一些基础知识和基本的命令。 启动shell在

samulelin的专栏 2647

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Linux shell 整理之 复合命令行篇(四)

文章目录开篇前置命令和后置命令异常(非零状态码)状态码输入输出重定向符a) 输出重定向 与 内联输出重定向的区别b) **++输入重定向++** 与 **++内联输入重定向++**扩展 标准输入(0),标准输出(1),标准错误(2)c) 临时重定向 (>&)d) 永久重定向 (exec)永久改变输出永久改变输入exec 扩展管道参考资料 前置参考文章 Linux shell 整理之 ...

乾坤瞬间的博客 1611

​Windows常用shell命令大全​

大多数默认的 Shell命令对应目标程序打多在“C:/Windows/”及“C:/Windows/System32”目录下。这里的servername,servicename,optionname,optionvalues和上面的一样,这里就option描述,通常为键值对应:option name = option values。注意这个名称是不同于显示名称的(这个名称可以用net start和服务控制面板看到),而SC是使用服务键名来鉴别服务的。/p 只能和 /d 一起使用。默认是nothing。

Albert__Einstein的博客 9145

shell命令说明(整理)

发帖时间: 02-08-22, 01:12 shell命令[转帖] --------------------------------------------------------------------------------shell是用户和Linux操作系统之间的接口。Linux中有多种shell,其中缺省使用的是Bash。本章讲述了shell的工作原理,shell的种类,she

keny518888的专栏 1740

编程中经常用到的工具

工作原理:需要在代码库中添加一个文件,描述当前仓库发生任何修改时,应该如何应对。SIGTSTP 信号:Ctrl-z(Terminal Stop)结构化 URL:api.service.com。Chrome / Firefox 开发者工具。CI:一种雨伞术语(涵盖了一组术语的术语)SIGKILL 信号:不能被程序捕获。让命令在后台运行:命令添加后缀 &当前会话尚未完成的任务:jobs。Blob 对象:文件(数据对象)shell 函数和脚本的区别。变量赋值:foo=bar。快照:被追踪的最顶层的树。

qq_35414977的博客 352

【笔记整理 - shell】

资料来源:《Linux命令行与shell脚本编程大全》 使用的是CentOS的bash shell。 shell是什么 用户与linux内核之间的一个“代理”,让用户能高效、安全、低成本地使用 Linux 内核。 除了作为中介,shell还能进行编程。也可将shell看做一种编程语言,shell程序本身就是编译器。 shell就是脚本语言,一边执行一边翻译,不会生成任何可执行文件。 命令 shell的命令可分为内置命令和外部命令。 内置命令可视为函数,外部命令可视为另一个程序。 一个例子: getsum

gtintesl的博客 835

shell编程笔记-入门概念

本笔记是根据linuxShell编程入门到精通一书学习实验和相关整理做的笔记   第一章 概念 如何运行程序 运行linux程序有三种方法 1.      使用文件具有可执行权限,直接运行文件。 2.      直接调用命令解释器执行程序 3.      使用source执行文件     Linux可执行的命令分为三种:内建命令、shell函数和外部命令。 1.      内

幸运小侯子 1630

flink 常见shell命令整理 --笔记整理

flink run参数说明 flink shell命令 汇总整理

编程技术、独立开发、技术资讯以及编程感悟等内容 789

Shell常用命令整理

1、   ls: 类似于dos下的dir命令ls最常用的参数有三个: -a -l -F。ls –aLinux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来。ls –l该参数显示更详细的文件信息。ls –F使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@

junmail的专栏 8万+

命令行的魔法世界:Shell 编程基础入门指南

《命令行的魔法世界:Shell 编程基础全景指南》通过生动比喻介绍了Shell编程的核心概念与应用价值。文章将Shell比作"魔法助手",从基础命令、变量操作、流程控制到函数封装,系统讲解了条件判断、循环、输入输出重定向等核心语法。特别强调了数据类型(字符串)、脚本调试和安全编程习惯,并提供了从入门到进阶的系统学习路径,包括日志分析、自动化部署等实战场景。全文以"魔法咒语"为喻,将技术概念形象化,帮助读者理解Shell作为Linux系统强大自动化工具的价值与使用方法。

kangkangluoluo的博客 837
上一篇: flume启动关闭重启脚本
下一篇: shell脚本常用语法整理-积累中
lcl_bigdata
博客等级 码龄11年 268粉丝 67原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值