Bash别名与函数实战攻略

Bash语言的函数实现 Bash语言的函数实现为脚本编程提供了强大的灵活性,让我们能够将复杂的逻辑拆分成易管理的小块。通过合理使用函数,我们可以让代码更加易读、易维护,并提高开发效率。掌握函数的用法,将使我们的脚本编写水平大幅提升。希望本文能帮助读者深入理解Bash函数的实现和应用,提高脚本编程技巧! 阅读详情

提供:ZStack云计算

内容介绍

在使用命令行的过程中,相信大家和我一样会越来越强烈地意识到日常使用的大部分命令都只是可用命令中的小小子集。大多数任务的执行过程都已经成为一种习惯,我们会每天以同样的方式加以解决。

尽管多数常见的命令工具都会尽可能缩短名称长度(例如输入‘ls’以代替‘list’,或者‘cd’来代替‘change-directory’)以提升操作效率,但这类用法其实并不太普遍。另外,也有很多人已经习惯于以同样的方式运行命令。

幸运的是,bash允许我们创建自己的命令快捷方式,即为命令创建别名及shell函数。在今天的教程中,我们将探讨如何利用这些选项帮助自己更快完成日常工作。

如何声明一条Bash别名

在bash当中声明别名的过程非常简洁直观。

只需通过以下命令,大家即可完成别名的声明过程,具体语法如其所示:

alias alias_name="command_to_run"

需要注意的是,两个相邻元素与等号之间没有间距。这并非可选方式,空格的加入会破坏该命令。

下面创建一条常用的bash别名。这里选择大家常用的命令,即ls -lha或者ls -lhA(第二条忽略了当前及主目录列表)。我们可以利用以下命令创建这条名为ll的快捷别名:

alias ll="ls -lhA"

现在,我们可以输入ll并列出当前目录中的内容了,其以长格式显示且包含全部隐藏目录:

ll

-rw-r--r-- 1 root root 3.0K Mar 20 18:03 .bash_history
-rw-r--r-- 1 root root 3.1K Apr 19  2012 .bashrc
drwx------ 2 root root 4.0K Oct 24 14:45 .cache
drwx------ 2 root root 4.0K Mar 20 18:00 .gnupg
-rw-r--r-- 1 root root    0 Oct 24 17:03 .mysql_history
-rw-r--r-- 1 root root  140 Apr 19  2012 .profile
drwx------ 2 root root 4.0K Oct 24 14:21 .ssh
-rw------- 1 root root 3.5K Mar 20 17:24 .viminfo

如果大家需要撤销该别名,可直接使用unalias命令:

unalias ll

这样此别名即被撤销。

大家可以直接使用alias命令而不加任何参数以查看全部已配置别名:

alias

要暂时取消全部别名(例如我们为ls -a设定一条ls别名),则可输入:

\ls

这样我们当前路径下将只能使用正常命令,而不会使用其别名版本。

假设大家没有撤销,那么ll别名将可用于当前shell会话。但在打开一个新的终端窗口时,该别名将不会被传递过去。

为了实现通用能力,我们需要将该别名添加到某个shell会话启动时需要加载的文件当中。目前比较流行的选项包括~/.bashrc与~/.bash_profile。我们只需要打开该文件并添加别名即可:

nano ~/.bashrc

将别名添加至命令行中的任意位置。大家可随意添加注释以标记该别名的具体作用:

#########
# Aliases
#########

alias ll="ls -lhA"

我们的文件当中可能已经包含某些别名或者变更。不少发行版都会内置一组标准bash配置文件,其中就包含不少相当实用的别名。

保存并退出文件。大家添加的任何别名都可在启动新shell会话时进行加载。而要在当前会话当中启用文件中的变更,则可要求bash进行re-read:

source ~/.bashrc

别名示例

现在我们已经了解了如何创建自己的别名,接下来要探讨的是如何将其纳入实际使用。部分别名可在网上找到,也有一部分已经默认处于发行版内的bash配置当中。

导航与罗列

在应用部分格式与选项调整之后,相当一部分简单的Linux命令都将变得更加实用。

下面我们以之前提到的ls为例,当然大家也可以自行探寻理想的使用方式。

首先让ls命令在默认条件下采取列式显示并提供文件类型指标(以‘/’结尾的为目录等):

alias ls="ls -CF"

我们也可以加入某些常见的误输入,并使其调用正确的命令:

alias sl="ls"

下面我们还可以精简该别名的输出结果,例如以长格式显示大型目录列表:

alias lsl="ls -lhFA | less"

下面再来看看cd命令可以有哪些延伸。

以下命令会变更我们的主目录——即使我们忘记了具体目录名:

alias cd..="cd .."

大家也可以直接创建一个名为..的别名,将cd部分也精简掉:

alias ..="cd .."

通过设置以下别名,我们可以在当前目录中轻松找到文件:

alias fhere="find . -name "
系统别名

我们是否能够通过这种方式简化某些监控与系统状态命令?我个人也经常使用这些功能,因此为什么不将它们也设置为别名呢?

以下命令将以可人为阅读的形式罗列磁盘使用量,包括文件系统类型,同时在结尾处提供使用总量:

alias df="df -Tha --total"

我们还可以为自己偏好的du输出结果设定别名:

alias du="du -ach | sort -h"

下面依据同样的思路让free输出结果变得更人性化:

alias free="free -mt"

我们可以在罗列进程表时多多利用别名机制。下面先来设置一条默认输出结果:

alias ps="ps auxf"

接下来让进程表具备可搜索性。我们可以创建一条别名,旨在根据我们输入的参数进行进程搜索:

alias psg="ps aux | grep -v grep | grep -i -e VSZ -e"

现在,我们在将所需搜索的进程名作为参数对该命令进行调用时,则会显示以下紧凑的输出结果:

psg bash

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
1001      5227  0.0  0.0  26320  3376 pts/0    Ss   16:29   0:00 bash
其它别名

在使用mkdir命令时,我们往往会为其加上-p以显示全部必要主目录。利用别名机制,我们可以将-p作为其默认参数:

alias mkdir="mkdir -p"

我们可能还需要添加-v,以保证在目录创建时得到通知——这能帮助我们快速了解是否由于输入错误而创建了错误的分支目录:

alias mkdir="mkdir -pv"

在利用wget命令从互联网下载文件时,大家几乎每次都会使用-c来确保出现问题时下载能够继续进行。那么同样将其纳入默认:

alias wget="wget -c"

我们可以使用history命令配合grep轻松进行历史搜索。这种作法在实用性上要远高于使用CTRL-R进行的反向搜索,因为我们可以利用命令参数实现更复杂的回调操作:

alias histg="history | grep"

我手头有不少系统工具,我希望它们能够立足于标准版本进行升级,从而实现更为复杂的功能。我们必须得首先下载对应的功能文件——不过只要用得好,这点小麻烦绝对是值得的。但需要注意的是,其可能会给其它别名带来影响。

这里要替换的是top命令的强化版本——新版本的输出结果更易于阅读,且可对结果进行排序、搜索以及滚动:

alias top="htop"

通过类似的方式,我们可以下载新的ncdu命令以通过交互式ncurses显示我们可浏览的文件与目录大小,亦可用于执行简单的文件操作:

alias du="ncdu"

另有一套df的升级方案,名为pydf。其能够提供彩色输出结果以及基于文本的使用信息栏。在安装完成后,我们可以利用以下命令将其设为默认选项:

alias df="pydf"

大家在路由器之后使用NAT时,是否曾希望通过命令行获取当前公共IP地址?以下别名将大大简化获取过程:

alias myip="curl http://ipecho.net/plain; echo"

在实际使用中,我倾向于将自己的文章上传图片优化为690像素或者更低水平,因此我会使用ImageMagick软件包(如果大家还没有安装该软件包,可运行sudo apt-get install imagemagick),其中包含一条名为mogrify的命令。我将这条命令添加到了自己的~/.bashrc文件当中:

alias webify="mogrify -resize 690\> *.png"

其会将当前目录中全部宽度超过690像素的PNG图像进行尺寸调整。

接下来要做的就是将其上传至服务器了,我可以使用sftp连接并自动变更至特定目录:

alias upload="sftp username@server.com:/path/to/upload/directory

Bash函数入门

虽然别名机制非常便捷且易于实现,但其作用仍然比较有限。大家可能会发现自己需要执行某些连锁操作,而且很难单纯利用添加参数的方式实现。另外,别名的运行速度也不理想——因为其运行优先级低于全部函数。

我们还有另一种解决方案,其更为强大且能够帮助大家弥合bash别名与完整shell脚本之间的空白,这就是所谓shell函数。它们的作用方式同别名一样,但更具扩展性且能够以标准方式接收输入内容。

这里我们不会讨论过于详尽的细节,因为其中可能涉及大量非常复杂的情况,而bash本身又是一种完整的脚本语言——不过我们可以通过几个基本示例进行讲解。

对于入门者,我们可以利用两种基本方式声明一条bash语法。其一为使用function命令,具体如下:

function function_name {
command1command2
}

另一种则是使用与C语言非常类似的几组括号:

function_name () {
command1command2
}

我们也可以将第二种形式压缩为一行,并用分号隔开各命令。其中最后一条命令必须以分号结尾:

function_name () { command1; command2; }

下面演示几条非常实用的bash函数。下面这条将创建一个目录,而后立即进入该目录。我们在管理新目录时肯定经常用到:

mcd () {
mkdir -p $1
cd $1
}

现在,当我们使用该函数来取代常见的mkdir命令时,其会在目录创建完成后自动进入此目录:

mcd test
pwd

/home/demouser/test

另一条极具实用性的函数则为extract。其中集成了大量功能,允许我们解压几乎所有格式的压缩文件。其存在大量变种,不过这里建议大家使用这一条:

function extract {
if [ -z "$1" ]; then
# display usage if no parameters given
echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
else
if [ -f $1 ] ; then
    # NAME=${1%.*}
    # mkdir $NAME && cd $NAME
    case $1 in
      *.tar.bz2)   tar xvjf ../$1    ;;
      *.tar.gz)    tar xvzf ../$1    ;;
      *.tar.xz)    tar xvJf ../$1    ;;
      *.lzma)      unlzma ../$1      ;;
      *.bz2)       bunzip2 ../$1     ;;
      *.rar)       unrar x -ad ../$1 ;;
      *.gz)        gunzip ../$1      ;;
      *.tar)       tar xvf ../$1     ;;
      *.tbz2)      tar xvjf ../$1    ;;
      *.tgz)       tar xvzf ../$1    ;;
      *.zip)       unzip ../$1       ;;
      *.Z)         uncompress ../$1  ;;
      *.7z)        7z x ../$1        ;;
      *.xz)        unxz ../$1        ;;
      *.exe)       cabextract ../$1  ;;
      *)           echo "extract: '$1' - unknown archive method" ;;
    esac
else
    echo "$1 - file does not exist"
fi
fi
}

这条函数会提取第一条参数并调用与文件扩展名对应的解压程序。

总结

希望今天的教程能为大家提供创建别名与bash函数的灵感。使用这些方案能够帮助大家显著提升日常工作效率。

请记住,重新定义现有命令的操作方式具有一定潜在破坏性。另外,如果大家已经习惯了使用某些自定义别名,那么一旦切换到其它设备环境,则可能产生强烈的不适感~

如果大家在考虑应选择哪些命令来创建别名,不妨首先查看常用命令历史记录。大家不妨参阅此处以了解通常情况下使用频率最高的命令:

history | awk '{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl |  head -n10

 1  247  24.7%  cd
 2  112  11.2%  vim
 3  90   9%     exit
 4  72   7.2%   ls
 5  70   7%     xset
 6  56   5.6%   apt-get
 7  40   4%     vlc
 8  40   4%     rm
 9  38   3.8%   screen
10  27   2.7%   htop

我们可以利用这份清单快速为常用命令创建别名。大家也不妨在评论中分享您最偏好的bash别名与函数:)

本文来源自DigitalOcean Community。英文原文:An Introduction to Useful Bash Aliases and Functions By Justin Ellingwood

翻译:diradw

Git Bash美化全攻略:从Nerd Font到Oh My Posh打造高效终端 在软件开发与系统管理中,命令行终端是开发者与系统交互的核心界面。其基础原理在于通过Shell解释器执行指令,直接调用操作系统功能。一个高效、美观的终端环境能显著提升技术价值,它通过优化信息密度、提供智能提示与自动补全,减少上下文切换和输入错误,从而将终端从单纯的命令执行工具转化为强大的生产力平台。这一理念在工程实践中尤为重要,尤其是在需要频繁使用Git进行版本控制、在Windows环境下寻求Linux-like体验的场景中。本文聚焦于通过集成Nerd Font字体方案和Oh My Posh提示符引擎,系统性 阅读详情

相关推荐

Windows下Git工具全攻略:从Git Bash到GitHub Desktop的完整指南

本文全面解析Windows平台下的Git工具链,包括Git Bash、Git CMD和GitHub Desktop的安装配置、核心功能与使用技巧。通过对比命令行与图形界面工具的特点,帮助开发者根据需求选择最佳方案,并分享混合工作流与常见问题解决方案,提升版本控制效率。

weixin_33704234的博客 485

bash alias 终极使用方法

1. alias对常用而有经常忘记的 shell 指令,我一般都会使用 alias 重定义一个命令放到 ~/.zshrc 里面,但是这种方式对于无法解决需要输入参数的 shell 命令。比如下面的命令:find . -type f -exec grep -Ho style.css {} \; | uniq 是很实用的一个命令,从当前目录的所有文件中需找字符 style.css 并打印文件名因为这条长

conding_算子 3786

Windows开发者必备:Git Bash安装与SSH密钥配置全攻略

在软件开发中,版本控制系统是团队协作与代码管理的基石,而Git作为分布式版本控制系统的代表,其核心原理在于跟踪文件变更、支持分支管理。基于非对称加密的SSH密钥认证技术,则解决了远程身份验证的安全与便利性问题,通过公钥与私钥的配对,实现了无需密码的自动化安全连接。这一技术组合为开发者提供了高效、安全的代码同步能力,尤其适用于频繁与GitHub、GitLab等远程仓库交互的场景。本文将聚焦于Windows环境下的具体工程实践,详细解析Git Bash的安装配置要点,包括环境变量设置、行尾转换等关键细节,并深入

weixin_34301132的博客 383

UOS/Deepin/Debian 自定义优化bash命令启用LL功能

装完UOS系统后,打开终端,输入ls 命令正常,输入ll命令却提示: bash: ll:未找到命令 其实 ll 并不是linux下一个基本的命令,它实际上是 ls -l 的一个别名。 Debian的很多发行版,包括UOS/deepin等都默认不支持命令 ll ,必须用 ls -l ,这样使用起来不是很方便。如果想要使用这个命令,我们可以作如下修改: 编辑 ~/.bashrc 文件 sudo nano ~/.bashrc 找到 #alias ll='ls -l' 将前面的 # 去掉后保存退出。 关闭重

Linux I Tell U 1780

37、Mac OS X 系统 Shell 配置全攻略

本文详细介绍了在Mac OS X系统中配置bash和tcsh Shell的方法,包括Shell的启动与关闭过程、环境变量和Shell变量的设置、别名的使用、PATH变量的配置等内容。通过学习,用户可以全面掌握Shell配置技巧,提高命令行操作效率。文章还提供了bash和tcsh启动流程图、常见问题解答以及实用命令总结,帮助读者深入理解和灵活应用Shell配置知识。

tech5的博客 235

易智联LM401模块学习(一)——初识Lora

Lora

weixin_46046597的博客 1056

Bash 获取当前函数名

shell 函数名

holly的专栏 3477

最优化问题——一维搜索(一)

最优化问题——一维搜索 1. 一维搜索的引入 1.1 从非线性规划问题到一维搜索 在前面的文章中,我们提到了基于迭代的非线性规划问题的求解思路。在求解过程中,我们提到了在每一步的迭代中都需要对计算步长因子,其计算公式为: λk=minλf(xk+λp)λ_k=min_{λ}f(x_k+λp)λk​=minλ​f(xk​+λp) 我们将f(xk+λp)f(x_k+λp)f(xk​+λp)视为λ的一元函数,我们的目标就是求这个一元函数的极小值。对于这个问题,我通常的求解方式为一维搜索。 1.2 一维搜索的基本形

hei653779919的博客 7362

-bash: xxx: 未找到命令

-bash: xxx: 未找到命令 1.-bash: netstat: 未找到命令 yum -y install net-tools 2.javac java-version 找不到命令 yum install java-devel 3.linux安装jdk时,vim 未找到命令 当进行安装jdk时,往往需要配置系统环境,当输入vim命令时,找不到vim命令,那么就需要加载插件了。 1、输入命令 rpm -qa|grep vim 查询已有的vim插件,正常此命令需要系统存在这样4条。.

记录学习生活的点滴(Linux运维、java) 5万+

MacBook 本地化部署 Dify 指南

dify 怎么安装部署 有哪些坑 !

weixin_44542598的博客 1528

WSL2+Docker+Ollama:解锁Windows本地GPU加速运行DeepSeek-R1模型

本文详细介绍了在Windows系统上,通过WSL2、Docker和Ollama的组合方案,实现本地GPU加速运行DeepSeek-R1模型的全过程。该方案解决了Windows环境下Ollama默认无法调用NVIDIA显卡的痛点,通过配置Docker的GPU支持,强制将计算任务分配给GPU,从而显著提升文本生成速度与效率,为开发者提供了一个便捷的本地AI测试环境。

weixin_28452161的博客 358

shell一站式攻略——别名与linux快捷键

bash基本功能: 1、命令别名与快捷键 2、历史命令 3、输出重定向 4、各种形式命令执行顺序 5、shell中特殊符号 1)什么是别名 命令别名类似人的别名,通过alias命令指定 2)使用方法 定义别名 alias [name[=value]] 这里需要注意的是: 等号(=)前后不能有空格,否则就会出现语法错误了。 如果value中有空格或tab,则value一定要使用引号(单、双引号都行)括起来 查看别名 输入alias命令,不加任何参数即可 使别名永久生效 我们通过 alias 命令

hulizhuzhenming的博客 236

Windows下Python安装geopandas全攻略:解决GDAL依赖问题的5个关键步骤

本文详细解析了在Windows系统下安装Python地理空间分析库geopandas时,如何有效解决其核心依赖GDAL的编译难题。文章提供了五个关键步骤,包括理解依赖关系、获取预编译wheel文件、顺序安装及环境验证,旨在帮助用户绕过复杂的C++编译环境,顺利完成geopandas的安装部署。

weixin_28221501的博客 286

全面认识 Git Bash:定义、组成部分、使用场景与原理全攻略

Git Bash 是一个基于 Windows 平台的命令行工具,集成了 Git 和 Bash shell 的功能。它为 Windows 用户提供了类似 Unix/Linux 的命令行环境,使得开发者能够在不切换操作系统的情况下,使用 Git 和常见的 Unix 工具链。Git Bash 是 Windows 开发者不可或缺的工具,它结合了 Git 的强大功能和 Bash 的灵活性。通过掌握其核心命令和高级技巧,开发者能够显著提升工作效率,轻松应对复杂的版本控制和自动化任务。

2501_93877521的博客 426

2026年03月CCF-GESP编程能力等级认证Scratch图形化编程一级真题解析

本文收录于《,订阅后可阅读专栏内所有文章。

人生就是一个不断学习的过程 243

苏宁易购手机行情比价系统:构建一个完整的Python爬虫实战指南

在当今数字化时代,智能手机已成为人们生活中不可或缺的一部分。随着各大手机品牌每年推出多款新品,消费者面临着越来越多的选择。然而,不同电商平台、不同时间段的价格波动使得消费者很难把握最佳购买时机。苏宁易购作为国内领先的电商平台之一,拥有丰富的手机商品信息和价格数据。本文将带领读者构建一个完整的苏宁易购手机行情比价系统,帮助消费者实时掌握手机价格动态。

2201_76125261的博客 207

VSCode与Git Bash深度整合全攻略(开发者必备的终端配置技巧)

掌握VSCode终端集成Git Bash,提升开发效率。本文详解配置步骤、适用场景与核心优势,解决命令行工具不兼容问题,实现一键调用Git命令,支持Unix指令无缝运行,开发运维更高效,值得收藏。

AlgoPerch的博客 1609

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Linux Shell脚本攻略-调试脚本+函数和参数

调试脚本 可以利用Bash内建的调试工具或按照易于调试的方式编写脚本 # 1. 使用选项-x,启用shell脚本的跟踪调试功能 $ bash -x script.sh # 打印出所执行的每一行命令以及当前状态 $ sh -x script.sh # 2. 使用set -x和set +x对脚本进行部分调试 #!/bin/bash # FileName: debug.sh for i in {1..6}; do set -x echo $i set +x done echo "Script execut

Arkardia的博客 1354

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

别再只会./gradlew了!Windows下Android开发Terminal命令执行全攻略(含AS、PowerShell、Git Bash)

本文详细解析了Windows下Android开发中Terminal命令执行的常见问题与解决方案,涵盖Android Studio、PowerShell和Git Bash等终端环境。通过对比不同终端的执行策略、路径解析机制和脚本支持,提供了避免gradlew报错的实用技巧和高阶优化方案,帮助开发者提升工作效率。

weixin_42531923的博客 255

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

linux 采集 bash 脚本,Linux shell脚本攻略(2)

1.数组与关联数组数组使用整数作为索引,关联数组使用字符串作为数组索引。1.数组的定义:arr=(1 2 3) 或者:arr[0]=1;arr[1]=2;arr[2]=3获取元素 echo ${arr[0]}获取全部 echo ${arr[*]} 或者 echo ${arr[@]}2.关联数组(Bash 4.0后被引入),可以用任意文本作为数组的索引。首先需要将一个变量定义为关联数组:decl...

weixin_39841136的博客 133

Linux Shell脚本攻略-别名+获取并设置日期并延时

别名 # 1. 创建别名 alias new_command='command sequence' alias install='sudo apt-get install' # alias命令的效果只是暂时的,一旦关闭终端,所有设置过的别名就失效了 # 为了使别名在所有shell中都可以,可以将其定义放入~/.bashrc文件中 # 每当一个新的交互式shell进程生成时,都会执行~/.bashrc中的命令 echo 'alias cmd="command seq"' >> ~/.bashrc

Arkardia的博客 1067

【读书笔记】Linux Shell脚本攻略(一)打印 环境变量 计算 文件 数组 别名 日期 调试 函数

简介 Bash(Bourne Again Shell),是大多数GNU/Linux系统默认的Shell环境。 $代表普通用户   #代表root管理员权限 sudo可以获取管理员权限 .sh文件存储脚本,以 #! /bin/bash开头主要用来定位bash解释器所在的位置 运行脚本  bash script.sh或者赋予用户权限后直接运行 chmod a+x script.s

朱铭德的博客 761

Linux脚本攻略学习笔记之数组和别名

一、数组1、数组定义2、数组定义3、打印数组元素内容4、以清单形式打印出数组的所有值5、打印数组长度(即数组中元素的个数)6、关联数组7、列出数组索引二、别名1、 创建别名2、 永久别名3、删除别名4、实例演示5、对别名进行转义 一、数组 1、数组定义 数组是shell脚本非常重要的组成部分,它借助于索引将多个独立的数据存储为一个集合。普通数组只能使用整数作为数组索引。Bash也支持关联数组。它...

whandgdh的博客 311

Linux Shell脚本攻略-使用配置文件定制bash

使用配置文件定制bash 在命令行中输入的绝大部分命令都可以放置在一个特殊的文件中,留待登录或启动新的bash会话时执行。将函数定义、别名以及环境变量设置放置在这种特殊文件中,是一种定制shell的常用方法 应该使用哪些定制文件? Linux和Unix中能够放置定制脚本的文件不止一个。这些配置文件分为3类;登录时执行的、启动交互式shell时执行的以及调用以及调用shell处理脚本文件时执行的 当用户登录shell,会执行下列文件 /etc/profile, $HOME/.profile, $HOME/.b

Arkardia的博客 696

linux 如何将一个文本文件元素创建一个数组,Linux脚本攻略学习笔记之数组和别名...

一、数组1、数组定义2、数组定义3、打印数组元素内容4、以清单形式打印出数组的所有值5、打印数组长度(即数组中元素的个数)6、关联数组7、列出数组索引二、别名1、 创建别名2、 永久别名3、删除别名4、实例演示5、对别名进行转义一、数组1、数组定义数组是shell脚本非常重要的组成部分,它借助于索引将多个独立的数据存储为一个集合。普通数组只能使用整数作为数组索引。Bash也支持关联数组。它可以使用...

weixin_39534978的博客 603
上一篇: 在CentOS 7上通过Apache和mod_wsgi运行Django应用
下一篇: 在Ubuntu 14.04上用BIND配置一个私有网络DNS服务器
普通网友
博客等级 码龄10年 769粉丝 269原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值