AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-1000739

Alex.Kh's questions

Martin Hope
Alex.Kh
Asked: 2020-12-23 16:16:15 +0800 CST

双引号分词与引号

  • 0

我有一个requirements.txt包含未来安装依赖项的文件。该文件的每一行只有一个名称:

$cat requirements.txt 
pandas
numpy
...

我的实际代码的某些部分如下所示:

packages=$(cat "requirements.txt") || exit

当我做echo $packages而不是"$packages",我得到以下结果

echo $packages
pandas numpy ...

VS

echo "$packages"
pandas
numpy
...

我很难理解分裂是如何发生的。对我来说,看起来未加引号的版本不会拆分字符串,而双引号会做一些奇怪的事情并逐行打印结果,即使它们应该防止拆分(也就是说,我希望结果是单行)我在这里遗漏了一些明显的东西吗?

bash
  • 1 个回答
  • 282 Views
Martin Hope
Alex.Kh
Asked: 2020-12-18 18:31:05 +0800 CST

在 /usr/local/bin 中存储脚本与存储符号链接

  • 1

我有一堆我经常使用的脚本。我将它们存储在磁盘上的一个文件夹中(而不是$PATH),所以我必须从该文件夹中手动执行它们。我(最终)决定让我的生活更轻松,并将我所有的脚本移到/usr/local/bin. 问题是,我应该直接移动我的文件,还是应该简单地创建指向文件的符号链接?在做出决定时,我有什么需要牢记的警告吗?

filesystem bash symbolic-link
  • 1 个回答
  • 606 Views
Martin Hope
Alex.Kh
Asked: 2020-11-06 14:39:45 +0800 CST

为什么在输入/输出重定向到同一文件期间文件被清空?

  • 2

这可能看起来像一个非常简单的问题,但到目前为止我还没有提出适当的解释。假设我tr用来转换一些随机文本(可以是任何程序)并希望将结果输出到原始文件中。

a@MacBook-Pro:~/Downloads$ cat test_file 
this is a sample text
a@MacBook-Pro:~/Downloads$ tr 't' 'T' <test_file >test_file 
a@MacBook-Pro:~/Downloads$ cat test_file #prints nothing

是否有任何特定的规则/事情告诉我们我们不能同时将输入和输出重定向到同一个文件?我显然知道我可以将输出重定向到新文件中,然后复制结果,但我对这种行为非常好奇。

PS我一直在使用Macbook,但在这种情况下这无关紧要

command-line bash redirect
  • 1 个回答
  • 188 Views
Martin Hope
Alex.Kh
Asked: 2020-08-23 15:41:40 +0800 CST

使用没有临时变量的 test 比较 2 个命令的输出

  • 1

我在 bash 中测试了一些东西,我决定将文件中的行数与唯一行数进行比较。我确实知道我可以简单地创建 2 个临时变量来存储相应的值并比较它们,但我想知道在 1 行中这样做的方式。

例如,我认为这种方法可行:test `wc -l filename` -eq `uniq filename|wc -l` . 我得到错误-bash: test: too many arguments。我的错误在哪里?如果不使用临时变量,你会怎么做?

command-line bash
  • 1 个回答
  • 1964 Views
Martin Hope
Alex.Kh
Asked: 2019-10-19 10:23:16 +0800 CST

在带有字符串变量的 If 语句中测试 -lt 命令

  • 0

我正在研究 bash 中的 If 语句,并发现了一些意想不到的行为。

假设我有一个变量b=2。这显然是一个字符串。如果我执行这样的 if 语句:

if [ $((b)) -lt 5 ]
then
...
fi

它成功地通过了条件语句,因为确实 2 小于 5。但是,如果我删除双括号 ( if [ b -lt 5 ]),它的工作方式仍然与前面的示例相同。你能告诉我为什么会这样吗?我认为这-lt仅适用于整数,不适用于字符串。它是否在这里将字符串变量隐式转换为整数类型?

scripts command-line bash
  • 1 个回答
  • 515 Views
Martin Hope
Alex.Kh
Asked: 2019-10-04 14:47:17 +0800 CST

使用正则表达式查找命令

  • 5

我正在练习一个find命令和时刻,并对命令中正则表达式的使用感到好奇find(类似于grep)。该命令是否支持它?如果是这样,启用它的选项是什么?

我尝试在页面中寻找它,man但到目前为止没有成功。

regex find
  • 1 个回答
  • 2645 Views
Martin Hope
Alex.Kh
Asked: 2019-09-30 13:32:48 +0800 CST

列出当前目录中名称仅包含大写字母的所有条目

  • 2

在我的一个实验问题中,我被要求使用管道和 grep 命令列出当前目录中名称仅包含大写字母的所有条目(文件和文件夹)。文件夹必须显示正斜杠。最初,我的解决方案如下所示:

ls -p | grep -e "^[[:upper:]]*\/?$"

我认为我可以用反斜杠保护“/”符号(如echo \*vs echo *)。但是,它没有按预期工作。我的一位朋友提出了以下解决方案:

ls -p | grep -e '^[[:upper:]]*/\?$'

我不知道为什么要这样使用反斜杠。对我来说更奇怪的是,它实际上产生了正确的结果。我想知道是否有人可以解释我的解决方案中的错误在哪里以及为什么第二个版本确实有效。

command-line bash grep ls
  • 1 个回答
  • 351 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve