相关疑难解决方法(0)

如何移动文件并查看进度(例如使用进度条)?

使用 移动大目录时mv,有没有办法查看进度 (%)?cpgentoo 上的命令有一个-g显示进度的开关。

command-line progress-information mv

155
推荐指数
6
解决办法
19万
查看次数

如何在别名命令上使用`which`?

像大多数用户一样,我设置了一堆别名来为常用程序提供一组默认标志。例如,

alias vim='vim -X'
alias grep='grep -E'
alias ls='ls -G'
Run Code Online (Sandbox Code Playgroud)

问题是,如果我想用来which查看我的vim/ grep/ ls/etc 来自哪里,别名会妨碍:

$ which vim
vim: aliased to vim -X
Run Code Online (Sandbox Code Playgroud)

这是有用的输出,但不是我在这种情况下要寻找的;我知道vim别名为,vim -X但我想知道 vim来自哪里。

除了暂时取消定义别名以便我可以使用which它之外,是否有一种简单的方法可以which“解开”别名并在其上运行?

编辑:这似乎which是一个 shell-builtin,在不同的 shell 中具有不同的行为。在 Bash 中,SiegeX 对--skip-alias标志的建议有效;但是,我在 Zsh 上。那里是否存在类似的东西?

shell zsh alias which

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

`env <command>` 在做什么?

命令env ls -al在做什么?

我有一个 Linux 测试,有一个问题:“如何直接运行命令,而不是它的别名?”
我知道存在一些解决方案,例如在命令前加上一些特殊符号,但我忘记了。现在我知道了\。(从这篇文章中阅读)。

但我也记得我在某处读到过,为了摆脱别名,我们可以在命令前加上env. 我做到了,它似乎有效,但我的回答被认为是错误的。我读infomanenv,但并没有理解太多。

envenv <command>没有任何论据的情况下,究竟在做什么env

command-line shell env command

45
推荐指数
2
解决办法
5万
查看次数

为什么此 shell 脚本中包含反斜杠?

在我的conda.sh脚本副本中,我看到以下几行:

if [ -n "${_CE_CONDA}" ] && [ -n "${WINDIR+x}" ]; then
    SYSP=$(\dirname "${CONDA_EXE}")
else
    SYSP=$(\dirname "${CONDA_EXE}")
    SYSP=$(\dirname "${SYSP}")
fi
Run Code Online (Sandbox Code Playgroud)

我很好奇,为什么在前面的一个反斜杠ddirname。我认为没有必要。这种反斜杠的使用也出现在源文件的其他地方。有没有理由这样做我失踪了?

bash shell-script

23
推荐指数
2
解决办法
2840
查看次数

反斜杠点作为命令是什么意思?

我安装的一个软件在我的个人资料中插入了一行,内容如下:

[ -s "$SOME_FILE" ] && \. "$SOME_FILE"
Run Code Online (Sandbox Code Playgroud)

我知道 dot.与 同义source,所以我怀疑这只是采购文件,但我以前从未见过\.;它会做其他事情吗?

编辑,关于 DV:搜索“反斜杠点”会导致有关./何时调用可执行文件的问题,并man source导致\.未出现的联机帮助页。我不知道还能尝试什么,因此这个问题。

编辑2:查看相关问题

bash

20
推荐指数
2
解决办法
3250
查看次数

grep:忽略 GREP_OPTIONS 搜索区分大小写

我已经设置了GREP_OPTIONS="--ignore-case --color"~/.bashrc因为我通常希望 grep 不区分大小写。但是,有时我需要 grep 来实际搜索区分大小写的内容,但手册页没有为此建议参数。

我怎样才能做到这一点?

grep environment-variables case-sensitivity

10
推荐指数
1
解决办法
6599
查看次数

Bash 隐藏命令 - 与命令同名的函数

我有一个功能.bashrc可以自动 sudo 打开我不能写的文件:

vim() {
    if [ -w "$1" ]; then
        \vim "$1"
    else
        sudo env HOME="$HOME" \vim -u ~/.vimrc "$1"
    fi
}
Run Code Online (Sandbox Code Playgroud)

当文件需要 sudo 时,它工作正常。如果没有,它会递归调用此函数并使用 100% 的 1 个 CPU,直到 I CC。

从这个答案我看到有几个选项,所有这些我都尝试过。一个确实有效:

'vim' "$1" #fails
\vim "$1" #fails
command vim "$1" #Works!
Run Code Online (Sandbox Code Playgroud)

为什么其他选项不能像我期望的那样工作?

(我知道这是重复的,但是很难用当前的问题标题在 SO/SE 上找到我的答案,所以我想发布一个问题,标题是我和其他人可以通过谷歌搜索找到的)

bash alias command

7
推荐指数
1
解决办法
3760
查看次数

bash - 别名命令 - 使用原始命令?

我已经ls使用了ls和 一些标志的别名,但是,我想在另一个别名中使用原始的“普通”版本ls。有没有办法让我调用原始版本ls

bash alias

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