问题标签 [tilde-expansion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
46660 浏览

perl - 如何在 Perl 中找到用户的主目录?

我需要检查用户主目录中的文件是否存在,因此使用文件检查:

即使在用户的主目录下有一个名为foo.txt的文件,Perl 总是抱怨没有这样的文件或目录。当我将“~”替换为/home/jimmy(假设用户是 jimmy)时,Perl 会给出正确的判断。

你能解释一下为什么“~”在 Perl 中不起作用并告诉我 Perl 查找用户主目录的方法是什么?

0 投票
1 回答
2329 浏览

objective-c - Objective-C 中基于波浪号的路径

在 Objective-C 中,如何将基于波浪号的路径名转换为完整路径名?也就是说,我想从 转换~/sandbox/Users/TheBobs/sandbox

0 投票
6 回答
4801 浏览

bash - have to determine all users home directories - tilde scripting problem

Assume someuser has a home directory /home/someuser

NAME=someuser

In bash - what expression to I use combining tilde (~) and $NAME to return the users home directory?

any suggestions?

0 投票
4 回答
3840 浏览

c++ - 为什么QFile不能从“~”目录中读取?

我尝试了以下简短示例来找出我正在处理的更大程序中的错误。看起来 QFile 不支持主目录的 unix(或 shell 的)表示法:

只要我用我的真实主目录路径替换“~”,它就可以工作。是否有一个简单的解决方法 - 启用一些设置?还是我必须采用“丑陋”的方式向 QDir 询问当前用户的主目录并手动将其添加到每个路径?

附录:很明显,shell 通常会执行波浪号扩展,因此程序永远不会看到。在 unix shell 中它仍然非常方便,我希望用于文件访问的 Qt 实现将包含该扩展。

0 投票
16 回答
97378 浏览

bash - 如何在 bash 中手动扩展特殊变量(例如:〜波浪号)

我的 bash 脚本中有一个变量,其值如下所示:

请注意,它是未扩展的波浪号。当我对这个变量执行 ls -lt(称为 $VAR)时,我没有得到这样的目录。我想让 bash 解释/扩展这个变量而不执行它。换句话说,我希望 bash 运行 eval 但不运行评估的命令。这在bash中可能吗?

我是如何设法在不扩展的情况下将其传递到我的脚本中的?我通过用双引号括起来的参数。

试试这个命令看看我的意思:

这正是我所处的情况。我希望扩大波浪号。换句话说,我应该用什么替换魔法以使这两个命令相同:

请注意,~/abc/def/ghi 可能存在也可能不存在。

0 投票
2 回答
3294 浏览

linux - 环境变量中的波浪号扩展

在我的 .sh 文件中,我有这个,cp $file $SOME_PATH, 而$SOME_PATH导出为export SOME_PATH="~/path/to/path/". 但是当我运行这个 .sh 文件时,我收到错误消息说不存在这样的“~/path/to/path/”。 我替换~$HOME,然后错误消失了。那么波浪号是怎么回事?

提前致谢。

0 投票
6 回答
4353 浏览

perl - 如何让 Perl 识别带有 '~' 的路径?

可能重复:
如何在 Perl 中找到用户的主目录?

我正在运行 Ubuntu。

每当我向 Perl 脚本传递一个以~(eg ~/Documents/file.txt) 开头的路径时,它都找不到它。我必须通过规范路径(例如/home/dave/Documents/file.txt)。

这是为什么?

我可以让 Perl 识别~路径吗?

更新

所有建议的解决方案都包括更改脚本中的代码。我想要一个不涉及对脚本本身进行任何更改的解决方案(因为并非所有脚本都是我的)。也许是 Bash 的工作方式?

该问题的更新版本已发布在 Super User

0 投票
2 回答
960 浏览

bash - Bash 波浪号扩展

是否可以添加 bash 用于波浪号扩展的规则?我想让 ~data 扩展到 /data/users/me,~scratch 扩展到 /data/scratch/me 等等。这可能吗,还是 bash 对“~”的控制太紧了?

谢谢,

安德鲁

0 投票
5 回答
10944 浏览

bash - 路径中的波浪号不会扩展到主目录

假设我有一个名为的文件夹Foo/home/user//home/user也由 表示~)。

我想要一个变量

a="~/Foo"然后做

cd $a

我明白了 -bash: cd: ~/Foo: No such file or directory

但是,如果我这样做cd ~/Foo,效果很好。关于如何让它工作的任何线索?

0 投票
3 回答
6723 浏览

shell - 为什么在 shell 脚本中使用 $HOME 而不是 ~ (波浪号)?

是否有任何理由在 shell 脚本中使用变量$HOME而不是简单的(波浪号)?~