热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linuxbash特性详解

一、bash及其特性1、shell:外壳广义shell包含:1、GUI:Gnome、KDE、Xfce2、CLI:sh,csh,ksh,bash进程ÿ

一、bash及其特性

1、shell:外壳

广义shell包含:

1、GUI:Gnome、KDE、Xfce

2、CLI:sh,csh,ksh,bash

进程:在每个进程看来,当前主机上只存在内核和当前进程,进程是程序的副本,进程是程序执行实例。

2、bash:

1、支持命令历史、命令补全

2、支持管道、重定向

3、支持命令别名

4、支持命令行编辑

5、支持命令行展开

6、支持文件名通配

7、支持变量

8、支持编程

3、命令历史:

history:

查看命令历史:history

-c:清空命令历史

-d OFFSET[n]:删除指定位置的命令

例1:history -d 500 #删除第500个历史命令

例2:history -d 500 3 #删除第500个命令起3个历史命令

-w:保存命令历史至历史文件(家目录下.bash_history)中

4、命令历史使用技巧:

!n:执行命令历史中的第N条命令

例:root@localhost /]# !44

!-n:执行命令历史中倒数第N条命令

例:[root@localhost /]# !-44

!!:重新执行上一次命令

!string:执行命令历史中最近一个已指定字符(string)串开头的命令

!$:引用前一个命令的最后一个参数

ESC,.:引用前一个命令的最后一个参数

Alt+.:引用前一个命令的最后一个参数

5、命令别名:

alias CMDALIAS=‘COMMAND [options] [arguments]’

例:[root@localhost /]# alias cls=clear

在shell中定义的别名仅在当前shell生命周期中有效:别名有效范围为当前shell进程

unalias:撤销别名

例:[root@localhost /]# unalias cls

\COMMAND:使用命令本身

6、命令替换:

$(COMMAND)

COMMAND:(反引号)

把命令中某个子命令替换为其执行结果的过程

例1:[root@localhost ~]# echo “The current directory is $(pwd).”

The current directory is /root.

例2:[root@localhost ~]# touch ./file-$(date +%F-%H-%M-%S).txt

[root@localhost ~]# ls

anaconda-ks.cfg file-2017-03-30-15-10-30.txt install.log sort.test

Desktop hello install.log.syslog

7、bash支持的引号:

``:命令替换

“”:弱引用,可以实现变量替换

‘’:强引用,不完成变量替换

8、文件名通配:globbing

*:匹配任意长度的任意字符

例:[root@localhost test]# ls a*

a a123 ab123 abc

?:匹配任意单个字符

例:[root@localhost test]# ls ?y*

xyz xyz123

[]:匹配指定范围内的任意单个字符

#man 7 glob #查看通配符

[a-z],[A-Z],[0-9],[a-zA-Z],[0-9a-zA-Z]

例:[root@localhost test]# ls [a-zA-Z]*[0-9]

a123 ab123 x12 xyz123

例:[root@localhost test]# ls [^0-9]*

a a123 ab123 abc Helloy x12 xyz xyz123

9、环境变量:

PATH:命令搜索路径

HISTSIZE:命令历史缓冲区大小(默认1000条):

例:[root@localhost ~]# echo $HISTSIZE

1000

二、命令行编辑:

光标跳转:

Ctrl+a:跳到命令行首部

Ctrl+e:跳到命令行尾

Ctrl+u:删除光标至命令行首的内容

Ctrl+k:删除光标至命令行尾的内容

Ctrl+l:清屏

最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!

在这里插入图片描述

这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……

如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。

敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。

自学推荐B站视频:

零基础转行软件测试:38天自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!

自动化测试进阶:已上岸华为,涨薪20K,2022最适合自学的python自动化测试教程,自己花16800买的,无偿分享

在这里插入图片描述


推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • EzPP 0.2发布,新增YAML布局渲染功能
    EzPP发布了0.2.1版本,新增了YAML布局渲染功能,可以将YAML文件渲染为图片,并且可以复用YAML作为模版,通过传递不同参数生成不同的图片。这个功能可以用于绘制Logo、封面或其他图片,让用户不需要安装或卸载Photoshop。文章还提供了一个入门例子,介绍了使用ezpp的基本渲染方法,以及如何使用canvas、text类元素、自定义字体等。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  •   一直对shell脚本有一种特殊的感觉,因此花了一段时间学习,本人擅长C语言编程,深受C语言荼毒,在学习其他任何类似于编程语言的东东的时候,都会不自觉的与C进行对比,因此对于shell中的变量的作用 ... [详细]
  • 关于python调试大法的信息
    本文目录一览:1、pdbpython调试怎么用 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文介绍了在MacOS系统上安装MySQL的步骤,并详细说明了如何设置MySQL服务的开机启动和如何修改MySQL的密码。通过下载MySQL的macos版本并按照提示一步一步安装,在系统偏好设置中可以找到MySQL的图标进行设置。同时,还介绍了通过终端命令来修改MySQL的密码的具体操作步骤。 ... [详细]
  • PHP反射API的功能和用途详解
    本文详细介绍了PHP反射API的功能和用途,包括动态获取信息和调用对象方法的功能,以及自动加载插件、生成文档、扩充PHP语言等用途。通过反射API,可以获取类的元数据,创建类的实例,调用方法,传递参数,动态调用类的静态方法等。PHP反射API是一种内建的OOP技术扩展,通过使用Reflection、ReflectionClass和ReflectionMethod等类,可以帮助我们分析其他类、接口、方法、属性和扩展。 ... [详细]
  • java线条处理技术_Java使用GUI绘制线条的示例
    在Java的GUI编程中,如何使用GUI绘制线条?以下示例演示了如何使用Graphics2D类的Line2D对象的draw()方法作为参数来绘制一条线。 ... [详细]
  • mac os php mysql_Mac OS下配置PHP+MySql环境
    由于最近需要布置mantis用来进行bug追踪,在此记录其过程。由于PHPapache环境在MacOS上是自带的,所以不需要另处下安装包, ... [详细]
author-avatar
倒霉熊丶JO_205
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有