Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >bash:无法在同一行中设置和使用别名

bash:无法在同一行中设置和使用别名
EN

Stack Overflow用户
提问于 2016-07-22 04:36:25
回答 2查看 1.1K关注 0票数 10

我希望第二行是foo而不是command not found

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ alias foo="echo bac" ; foo;
-bash: foo: command not found
$ foo
bac
$

为什么第二行不写foo?使用以下shell进行测试,相同的行为:

  • 巴什3.2.5巴什
  • zsh 5.0.8
  • 破折号0.5.9
  • 蒲式箱1.25.0
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-22 05:05:36

您所看到的行为在Bash参考手册 (强调我)中有描述:

关于别名的定义和使用的规则有些混乱。在执行该行上的任何命令之前,Bash总是读取至少一行完整的输入。别名是在读取命令时展开的,而不是在执行命令时展开的。因此,--显示在同一行上的别名定义--在下一行输入被读取之前不会生效。该行中别名定义之后的命令不受新别名的影响。

想必其他的壳也是这样的。

票数 9
EN

Stack Overflow用户

发布于 2020-05-09 13:20:41

要在bash中的同一行中设置和使用alias,可以使用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
eval $'alias df5=df\ndf5 -h'

(学分:豪克拉延解决办法 +克萨兰达解决办法)。

对命令的解释:

  • 根据作为汤姆·费内赫指出的bash手册,“显示在同一行命令上的别名定义直到读取下一行输入时才生效”,因此我们使用eval,并在alias定义和使用之间添加新行。
  • 克萨兰达解决办法中:“$'...'是一个"C字符串”,bash在将它传递给eval之前,会将其中的\n展开为文字换行符。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38526612

复制
相关文章
alias设置别名使用的时候报错:-bash: this: command not found
使用alias指定别名的时候一定要使用‘’将原来的命令引起来,防止特殊字符发生错误。
张琳兮
2018/09/10
3.5K0
Laravel Bash 别名
Bash 别名是让你用更难忘的单词、缩写或者字符引用来另一个命令的方式。 例如,如果你使用 Git,你可能会在一天内运行很多次 git status,而为了节省时间和按键的次数,你可以将 git status 命名为 gs,它自动继承和调用正确的命令。 这些年我看到很多与众不同的的别名,每个人都是独一无二的。 也许你会对我用的快捷键感到迷惑,甚至会觉得不可思议的。「咦?有这种命令么?」 诸如此类的事情,而这可能正是别名好玩的地方。(我就喜欢看你一脸懵 B 再一副觉得好神奇的样子) 我请社区的人和我分享他们的
overtrue
2018/07/05
1.8K0
在linux上创建永久的Bash别名
创建别名 默认系统下没有 ll 命令,使用 alias 创建别名 alias ll='ls -alh' 注意:等号前后不要有空格,不能写成 alias ll = 'ls -alh' 可以直接使用 alias 命令显示已经创建的别名列表,发现 ll 已经创建成功 删除别名 unalias name # name 为你要删除的别名名称 unalias ll 再使用 alias 命令显示别名列表,发现 ll 已经成功删除 / 取消 alias 永久生效和永久删除 按照上面的操作,在当前终端下使用 al
入门笔记
2022/06/02
1.6K0
在同一word文档中设置不同页码
(opens new window) 1、把文档结构确定好,比如封面、目录和正文,然后在每一部分与每一部分之间插入分隔符,具体操作为:点击“页面布局”-“分隔符”-“下一节”。注意要把光标放在两部分即封面与目录之间哦。 2、点击“插入”-"页码"-“页面底端”,选择自己需要的页码样式。 3、取消分节链接。word默认的节是链接到前一节的(即与前一节有相同的页面格式),因此要将节与节之间的链接取消掉。点击页码,点击“取消链接到前一条页眉” 4、封面部分不要页码,直接选中页码手动删除即可,操作如下图所示。因为封面部分已经独立为一节,所以不会受其他部分影响。 5、点击“页码”-“设置页码格式“,会出现如下对话框。在编号格式里选择罗马数字,在页码编号里选择起始页码,填I,点确定。 6、正文部分按照相同的方法设置成阿拉伯数字页码。这样整篇文章的页码就弄好了哦。
P轴
2022/11/18
2K0
10 个方便的Bash别名
你有多少次在命令行上输入一个长命令,并希望有一种方法可以保存它以供日后使用?这就是 Bash 别名派上用场的地方。它们允许你将长而神秘的命令压缩为易于记忆和使用的东西。
机智的程序员小熊
2019/12/12
4520
Ubuntu中使用alias设置命令别名
上次说到gcc编译不会链接数学库,那么需要使用gcc -lm test.c,其实默认gcc -lc test.c 我如果想省去每次带上-lm参数。那么可以使用alias命令 alias使用详解(注意这个命令有很多需要注意的地方) 用途:alias是用来给一个比较长的命令或者路径建立一个简单的名字 格式:alias 新命令=’原命令’ 注意:原命令需要带上单引号,注意等号两边不能有空格,如果设置的路径是目录的话,注意最后一定要带上一个/ 如果要取消的话就可以使用unalias 新命令即可取消
苦咖啡
2018/05/07
2.5K0
Pycharm中的terminal无法使用bash命令解决办法
Reason:最近在看FADA论文,并且要运行代码。要运行的文件是sh文件,我想在terminal中使用bash xxx.sh来运行此文件,结果报错:‘bash’ 不是内部或外部命令,也不是可运行的程序或批处理文件。
全栈程序员站长
2022/11/17
2.7K0
Pycharm中的terminal无法使用bash命令解决办法
在同一行布局的技巧 原
例如上面的布局,我们可以使用里面元素浮动,外面的div高度为0的特点来布局,使2个div重叠在一起
tianyawhl
2019/04/04
5340
在同一行布局的技巧
                                                                            原
Python print() 函数,在同一行打印
print() 函数是 Python 中的一个重要函数,因为它用于将 Python 输出重定向到终端或者重定向到文件。
润森
2022/09/22
2.6K0
Python print() 函数,在同一行打印
(17)Bash别名与快捷键
用命令行定义的别名,只会临时有效,重启后就消失了。我们想让别名永久有效,可通过下面的命令,将别名写入该配置文件,即可永久有效。
生信real
2020/08/26
3430
技术|通过 ssh 会话执行 bash 别名
我在远程主机上上设置过一个叫做file_repl的bash别名。当我使用ssh命令登录远程主机后,可以很正常的使用这个别名。然而这个bash别名却无法通过ssh来运行,像这样:
用户8710643
2021/07/12
6770
Mac设置命令别名
文件中添加 /Users/xxx/.bash_profile 添加别名命令: alias pull='git pull origin' 注意:等号后面不能有空格 从新读取配置文件: source ~/.bash_profile 查看别名配置: alias
代码改变世界-coding
2018/07/03
1.4K0
ssh设置访问别名
进入~/.ssh/目录中添加config文件,写入如下内容: Host slave1 HostName 192.168.200.123 User slave1 Host slave2 HostName 192.168.200.124 User slave2
foochane
2019/05/23
2K0
⒉设置 Bash 选项[3-3]
histappend 当shell退出时,历史清单将添加到以HISTFILE变量的值命名的文件中,而不是覆盖文件 histreedit 如果readline正被使用,用户有机会重新编辑一个失败的历史替换 histverify 如果设置,且readline正被使用,历史替换的结果不会立即传递给shell解释器。而是将结果行装入readline编辑缓冲区中,允许进一步修改 hostcomplete 如果设置,且readline正被使用,当正在完成一个包含@的词时bash将试图执行主机名补全。默认为打开 hup
py3study
2020/01/10
8400
⒉设置 Bash 选项[3-1]

 <!--
 /* Font Definitions */
 @font-face
 {font-family:宋体;
 panose-1:2 1 6 0 3 1 1 1 1 1;
 mso-font-alt:SimSun;
 mso-font-charset:134;
 mso-generic-font-family:auto;
 mso-font-pitch:variable;
 mso-font-signature:3 135135232 16 0 262145 0;}
 @font-face
 {font-family:"\@宋体";
 panose-1:2 1 6 0 3 1 1 1 1 1;
 mso-font-charset:134;
 mso-generic-font-family:auto;
 mso-font-pitch:variable;
 mso-font-signature:3 135135232 16 0 262145 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
 {mso-style-parent:"";
 margin:0cm;
 margin-bottom:.0001pt;
 text-align:justify;
 text-justify:inter-ideograph;
 mso-pagination:none;
 font-size:10.5pt;
 mso-bidi-font-size:12.0pt;
 font-family:"Times New Roman";
 mso-fareast-font-family:宋体;
 mso-font-kerning:1.0pt;}
 /* Page Definitions */
 @page
 {mso-page-border-surround-header:no;
 mso-page-border-surround-footer:no;}
 @page Section1
 {size:612.0pt 792.0pt;
 margin:72.0pt 90.0pt 72.0pt 90.0pt;
 mso-header-margin:36.0pt;
 mso-footer-margin:36.0pt;
 mso-paper-source:0;}
 div.Section1
 {page:Section1;}
 -->
py3study
2020/01/08
9290
推荐几个 Linux/Mac 中方便的 Bash 别名
你有多少次在命令行上输入一个长命令,并希望有一种方法可以保存它以供日后使用?这就是 Bash 别名派上用场的地方。它们允许你将长而神秘的命令压缩为易于记忆和使用的东西。需要一些例子来帮助你入门吗?没问题!
lyb-geek
2022/03/10
2960
linux下的别名设置
命令:alias ll="ls -l" 但是该命令在重新登录后将会丢失 可以保存在用户目录下的.bashrc文件中,不过需要用户重新登录后才会生效,注意不要放在return后,也可以用source ~/.bashrc(或者 . ~/.bashrc)使修改立刻生效 .bashrc文件 .bashrc - The individual per-interactive-shell startup file. 这个文件主要保存个人的一些个性化设置,如命令别名、路径等。下面是个例子: # User specific
joshua317
2018/04/10
2.8K0
Git 进阶之「设置别名」
在「Git 初体验及其常用命令介绍」一文中,我们已经接触了不少常用的命令,包括: git status,查询仓库状态; git init,初始化仓库; git add,添加文件; git commit,提交文件; git log,查询提交日志; git branch,拉分支; git checkout,切换分支或者标签; git merge,合并分支; git branch -d & git branch -D,删除或者强制删除分支; git tag,添加标签。 对于上述的 Git 命令,我们使用的频繁特别
CG国斌
2018/01/26
9310
iOS小技能: 限制账号退出登陆后无法收到推送功能(递归设置和删除别名)
⭕ 解决iOS15之后本地通知通知栏弹出多次的问题:使用Service Extension拦截消息推送,修改UNNotificationSound为本地拼接的音频,来避免产生多条横幅。
公众号iOS逆向
2022/08/22
1.7K0
iOS小技能: 限制账号退出登陆后无法收到推送功能(递归设置和删除别名)
点击加载更多

相似问题

在bash脚本中设置别名

10

设置崇高以使用bash别名和函数

11

Vimperator Bash -无法使用别名

12

在bash.bashrc中设置别名

23

无法在bash脚本中调用别名

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文