标签: alias

用函数覆盖后如何获取原始系统命令?

我现在正在参加 Hackathon,所以如果有人能尽快回答这个问题,你会帮我一个大忙。

我在 .bashrc 中编写了一个名为 ls() 的函数,如下所示:

ls() {

  if(some condition);
    do something
  else
    ls; #(CALL TO ORIGINAL ls SYSTEM CALL)
  fi

}
Run Code Online (Sandbox Code Playgroud)

但是这里到了else部分,就进入了无限循环

如何在 else 中调用原始 ls 系统调用,或者,如何使 ls 在一个文件夹中的行为与其他文件夹中的行为不同。

command-line bash alias functions bashrc

4
推荐指数
1
解决办法
1747
查看次数

如何在终端启动时运行源代码?

我已经准备好了别名.bash_aliases
我现在遇到的问题是我需要先运行source ~/.<filename>才能执行别名命令。

我的问题是如何source ~/.<filename>在用户打开终端时运行。

alias

4
推荐指数
1
解决办法
1万
查看次数

Bash 别名 - 如何在不丢失当前位置的情况下在不同文件夹中运行文件?

我的 .bashrc 文件夹中有一个不错的小 bash 别名,它允许我启动 Tomcat 运行而无需先 cd 进入文件夹,例如

alias startTomcat="cd ~/apache-tomcat-7.0.34/bin/ && ./startup.sh"
Run Code Online (Sandbox Code Playgroud)

但是,当我startTomcat在终端中运行时,我从启动的文件夹中启动,现在我的终端驻留在~/apache-tomcat-7.0.34/bin/. 当然,这是预期的行为,但我想要做的是运行命令而不在不同的文件夹中结束。

我可以保存原始位置,然后在我的 .bashrc 文件中返回它,或者在不cd退出原始文件夹的情况下运行 startup.sh吗?

谢谢!!

bash scripts alias bashrc

4
推荐指数
1
解决办法
7524
查看次数

如何设置别名 apache2

我是 UBUNTU 的新手,并尝试使用 apache 来检查我目前正在使用 Joomla 开发的网站(也是新手)。我试图在 httpd.conf 中设置别名,但没有成功。感谢您的帮助。

alias apache2 12.04

4
推荐指数
1
解决办法
4万
查看次数

ls 和 cat 功能的一个命令?

好的,伙计们,这是一个实验性问题警告!

我经常混淆cat,并ls在控制台上快速运行。不是因为我忘记了它们的含义,不是。仅仅因为我在没有深入考虑命令的情况下输入 - 它只是自动出现。我相信每个人都知道我要解释的内容:如果您的任务是列出文本文件或目录,则不必考虑输入什么内容。

现在,为什么有两个不同的命令?如果有一个命令,如果目标是目录,则列出目录,如果目标是文件,则列出文件的内容,事情会更流畅。

有这样的命令吗?

我知道有些编辑器(例如vim)可以列出目录。但这不是我想要的,因为我想留在控制台上。其次,在通过vim目录列表打开文件后,没有办法返回——至少我知道没有。

如果有外的开箱无解我会尽量做一个小bash脚本(包装),以catls。但这不是首选,因为在使用许多不同的系统时,必须将其放置在每个系统上......

command-line scripts alias ls cat

4
推荐指数
1
解决办法
3186
查看次数

.bashrc 不应该在我每次登录时运行吗?

Ubuntu 新手,所以如果我说的很奇怪,请原谅......我真正想做的就是将我的 ls 命令更改为 ls --color=always -ragX

解决了... Alias 会做得很好。现在,每次我登录时都运行它(从 Putty SSH 到命令行)我.bashrc在我的主目录中创建并输入

alias ls='ls --color=always -ragX'
Run Code Online (Sandbox Code Playgroud)

保存、退出并返回

打字 vi

看起来.bashrc文件没有运行?怎么办?

ssh alias ls bashrc

4
推荐指数
3
解决办法
1万
查看次数

别名 xdg-open 打开

有没有办法将命令更改xdg-open为更简单的open?包括传递路径的能力吗?例如,xdg-open .我不想输入 ,而是简单地输入open .

command-line bash alias

4
推荐指数
1
解决办法
3388
查看次数

如何将“rm -rf /”设为别名?

我想为rm -rf /. 我知道如何制作别名;问题是我不知道如何使用一系列命令来为所有命令创建别名。我想要类似rm -rf / = echo 'something', 但仅当使用“/”时。

我怎样才能做到这一点?

root alias rm

4
推荐指数
2
解决办法
4953
查看次数

打开图形程序 (nautilus) 的别名也在终端中打开它

当我输入 时nautilus .,它只会在终端之外打开 Nautilus 中的当前目录,我可以继续在终端中执行我想继续做的任何事情,而不必先取消该过程。

现在,当我创建一个别名时

alias open="nautilus ."
Run Code Online (Sandbox Code Playgroud)

并在终端写“open”,Nautilus会在当前目录中按预期打开,但也会在终端中打开(“Initializing nautilus-dropbox 2019.02.14”),这意味着我不能使用终端直到我取消这个流程。但是,取消该过程也会关闭 nautilus。

我怎样才能防止这种情况?

command-line nautilus alias

4
推荐指数
1
解决办法
404
查看次数

设置 Ubuntu 别名的参数

我有一个示例命令,如下所示:

g++ main.cpp -o main -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -I/usr/local/include/opencv4
Run Code Online (Sandbox Code Playgroud)

运行上述整个命令将main根据参数main后的第二个参数创建文件-o。我已在文件.zshrc中将其重置如下:

alias ocv='f(){ g++ "$@" -o built_$@ -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -I/usr/local/include/opencv4; unset -f f; }; f'
Run Code Online (Sandbox Code Playgroud)

现在运行上面的命令如下:

ocv main.cpp
Run Code Online (Sandbox Code Playgroud)

它将创建一个名为built_main.cpp. 但我希望它main通过删除扩展名来生成文件.cpp。怎么做?

command-line zsh alias g++ bashrc

4
推荐指数
1
解决办法
180
查看次数

标签 统计

alias ×10

command-line ×5

bashrc ×4

bash ×3

ls ×2

scripts ×2

12.04 ×1

apache2 ×1

cat ×1

functions ×1

g++ ×1

nautilus ×1

rm ×1

root ×1

ssh ×1

zsh ×1