bash基础特性是什么
#bash基础特性之命令别名
bash在shell进程中可以为命令本身或者命令加上选项设定别名,设定后可以直接输入别名的方式调用其功能。
设定命令别名的方式为:~]# alias NAME=COMMAN。
撤销命令别名的方式为:~]# unalias NAME
查看当前bash中已经设定的命令别名方式为:~]# alias
注意1:此方式设定的命令别名生命周期只是当前shell进程。退出当前shell再登陆即已经失效。如需在shell启动后自动生效,需要设置bash的环境变量相关配置文件。
注意2:如果命令别名和命令名相同,则直接调用别名定义的命令其功能。如需直接调用该命令本身功能而非别名,可使用“~]# \COMMAND。
#bash基础特性之命令历史
bash在shell进程会自动保存其会话中用户曾经执行过的命令,在shell运行中该记录存储在内存空间中,shell进程结束时通过将其存储在“历史文件”来持久保存此前执行过的命令,每次shell进程启动都会读取该文件内容到内存空间中,每个用户都有其自己专用的历史文件。
历史相关参数的变量
HISTSIZE:SHELL进程的缓冲区保留的历史命令的条数
~]# echo $HISTSIZE 可查看其大小
~]# export HISTSIZE=# 可设置其大小
HISTFILESIZE:命令历史文件可保存的历史命令的条数
~]# echo $HISTFILESIZE 可查看其大小
~]# export HISTFILESIZE=# 可设置其大小
HISTFILE:当前用户的命令历史文件
~]# echo $HISTFILE 可查看文件名和地址
HISTCONTROL:当前用户记录命令历史的方式
~]# echo $HISTCONTROL 可查看文件名和地址
~]# export HISTCONTROL=方式名 可设置记录命令历史的方式
共有三种方式:
ignoredups:忽略重复的命令;重复是指连续且相同的命令;
ignorespace:以空白字符开头的命令不记入历史;
ignoreboth:上述两者同时生效;
查看和管理命令历史的相关命令
查看命令历史列表:~]# history
命令用法:
history -c:清空命令历史;
history -d:OFFSET:删除指定的条目;
-a 将当前缓冲的历史行追加到历史文件中
-n 从历史文件中读取所有未被读取的行
-r 读取历史文件并将内容追加到历史列表中
调用命令历史列表中的命令以重执行之目的:
!#:再一次执行历史列表中的第#条命令;
!!:再一次执行上一条命令;
!STRING:再一次执行命令历史列表中最近一个以指定的STRING开头的命令;
调用上一条命令的最后一个参数:
快捷键:ESC, .(先后按下这个两个键)
Alt + .(同时按下这两个键)
!$:给出的上一个命令的参数
显示最近的n条件命令历史:history #
#bash基础特性之快捷键
Ctrl+a:光标跳至命令行首;
Ctrl+e:光标跳至命令行尾;
Ctrl+k:删除光标所在处至尾部的内容;
Ctrl+u:删除行首至光标所在处的内容;
#bash的特性之命令行展开:
把命令行的给定的特殊符号自动替换为相应字符串的机制;
~: 自动替换为用户家目录;
~USERNAME:自动替换为指定用户的家目录;
{ }:可承载一个以逗号分隔的路径列表,能够将其展开为多个独立路径;
示例:/tmp/{x,y,z} = /tmp/x /tmp/y /tmp/z
示例:/tmp/{x/y, m/{m,n}} = /tmp/x/y /tmp/m/m /tmp/m/n
示例:/tmp/{x,y}/z = /tmp/x/z /tmp/y/z
#bash的基础特性:命令补全和路径补全
命令补全:
shell程序在接收到用户执行命令补全的请求后(单击一下Tab),最左侧字符串将被当作命令去查找;
其查找机制:
1):查找内部
2):查找外部命令:去$PATH变量所指定的各路径下,自左而右逐个搜索各目录下的文件名;
查找完成后,给定的打头的字符串如果能惟一标识某命令程序文件的文件名,则直接自动补全为该命令,不能惟一标识,再击tab可给列表;如果还是没有反应则表示错误,没有任何命令可被此打头字符串标识;
路径补全:
在给定的起始路径的上级目录下,以对应路径下的打头字符串来逐一匹配上级目标下的每个文件:如果是惟一标识,Tab补全;不能惟一标识:tab, tab给出列表;错误路径:没有响应。
#bash的特性之glob
glob:文件名通配;快速引用多个文件;文件名整体匹配度检测
*:匹配任意长度的任意字符
?:匹配任意单个字符
[ ]:匹配指定集合内的任意单个字符
[a-z]:表示所有的字母,不区分大小写
[0-9]:表示所有数字
[a-z0-9]:所有字母加数字
[[:upper:]]:所有大写字母
[[:lower:]]:所有小写字母
[[:digit:]]:所有数字
[[:alpha:]]:表示所有字母
[[:alunm:]]:表示所以字母加数字
[[:space:]]:表示空白字符
[[:punct:]]:表示所有标点符号
[^ ]:取反
以上是bash基础特性是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

适用于 Linux 的 Windows 子系统第一种选择是使用适用于 Linux 或 WSL 的 Windows 子系统,这是一个兼容层,用于在 Windows 系统上本地运行 Linux 二进制可执行文件。它适用于大多数场景,允许您在 Windows 11/10 中运行 shell 脚本。WSL 不会自动可用,因此您必须通过 Windows 设备的开发人员设置启用它。您可以通过转到设置 > 更新和安全 > 对于开发人员来完成。切换到开发人员模式并通过选择是确认提示。接下来,查找 W

今年初,当Microsoft和Canonical发布Windows10Bash和Ubuntu用户空间,我尝试做了一些初步性能测试UbuntuonWindows10对比原生Ubuntu,这次我发布更多的,关于原生纯净的Ubuntu和基于Windows10的基准对比。Windows的Linux子系统测试完成了所有测试,并随着Windows10周年更新放出。默认的Ubuntu用户空间还是Ubuntu14.04,但是已经可以升级到16.04。所以测试首先在14.04测试,完成后将系统升级升级到16.04

程序员经常使用Bash命令语言创建Shell脚本来自动化手动任务。例如,他们会为各种配置、文件操作、生成构建结果和各种与DevOps相关的活动创建Bash脚本。几乎所有类Unix或基于Unix的操作系统都为用户提供预安装的Bash解释器,因此我们可以使用Bash编写更具可移植性的自动化脚本。正如我们已经知道的那样,Bash脚本编写是指使用Bash命令语言的语法、内置Bash命令和核心操作系统CLI程序(如GNU核心工具)编写一系列命令。标准且老式的Bash脚本通常执行一些命令并在终端上显示纯文本

这里我们将看到如何使用bash脚本获得数字A的B次方。逻辑很简单。我们必须使用“**”运算符或幂运算符来执行此操作。让我们看下面的程序来清楚地理解这个概念。示例#!/bin/bash#GNUbashScripta=5b=6echo"$(($a**$b))"输出15625

BourneAgainShell(简称BASH)是在GNU/Linux上最流行的SHELL实现,于1980年诞生,经过了几十年的进化从一个简单的终端命令行解释器演变成了和GNU系统深度整合的多功能接口。Bash,Unixshell的一种。1989年发布第一个正式版本,原先是计划用在GNU操作系统上,但能运行于大多数类Unix系统的操作系统之上,包括Linux与MacOSXv10.4都将它作为默认shell。它也被移植到MicrosoftWindows上的Cygwin与MinGW,或是可以在MS-

上周微软宣布了BugBash,这是一项旨在吸引Windows内部人员完成任务(希望如此)以在长期和短期内改善Windows11开发的活动。最初在3月16日,大约有26个任务可供完成,但现在已经增长到了惊人的75个。不过,更重要的是:BugBash将于3月22日结束,同时还有机会获得BugBash特定贴纸这将出现在您的反馈中心。要参加Windows11BugBash,您需要从Dev频道获得最新的Windows11预览版本,即build2

当计算机显示器的调色板有限时,网页设计师通常使用一组Web安全颜色来创建网站。虽然在较新设备上显示的现代网站可以显示比最初的Web安全调色板更多的颜色,但我有时喜欢在创建网页时参考Web安全颜色。这样我就知道我的网页在任何地方都看起来不错。你可以在网上找到Web安全调色板,但我想拥有自己的副本以方便参考。你也可以使用Bash中的for循环创建一个。Bashfor循环Bash中的for循环的语法如下所示:for变量in集合;do语句;done例如,假设你想打印从1到3的所有数字。你可以快速在Bas

拥有扎实的编程基础显然是一位优秀软件工程师的必备素质。无论是像Python这样的解释型语言,还是像C++这样的编译型语言,至少掌握一门编程语言至关重要。然而,这只是成为一个真正全面发展的工程师的一个方面。如果你在Shell环境下迷失方向,那些基础知识也就毫无用处了。在Bash中灵活运用命令将带你到达传统编程语言无法触及的领域。有时候,你实际上并不需要使用更强大的编程语言。通过仅仅使用Shell,你可以更快、更轻松地完成所需任务,而且不需要额外的依赖。在本文中,我们将探讨一些非常实用的Bash命令
