- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个 shell 脚本来解析当前工作目录的路径(打印当前目录上方的所有基本名称)。
到目前为止,我一直在使用环境变量PWD
来解析路径,但我想知道是否
PWD
始终设置使用 pwd
shell-builtin 会更好吗?我需要这个脚本在尽可能多的平台上运行,所以我只是想知道...
最佳答案
POSIX需要按以下方式设置 $PWD
:
PWD
This variable shall represent an absolute pathname of the current working directory. It shall not contain any components that are dot or dot-dot. The value is set by the cd utility, and by the sh utility during initialization.
因此您可以依赖于已设置的内容 - 但请注意“...绝对路径...”,而不是绝对路径。
bash
(至少最近的版本)会记住您在设置 $PWD
(和 pwd
内置)时遵循的符号链接(symbolic link)。 command pwd
(即外部命令)不会。所以你会在那里得到不同的结果,这对你来说可能重要,也可能不重要。如果您想要没有符号链接(symbolic link)的路径,请使用 pwd -P
。
请注意 pwd
文档状态:
If an application sets or unsets the value of PWD, the behavior of pwd is unspecified.
所以,不要那样做:)
简而言之,这里没有赢家。环境变量将存在于 POSIX shell 中,外部命令也可能存在,也可能是内置命令。选择最适合您需要的那个,重要的是您是否关心符号链接(symbolic link)。
关于bash - $PWD 与 pwd 关于便携性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10795014/
很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便可以重新打开,visit the help center . 10年前关
我想做的是使 sbt 可移植,至少可以在不同的 Windows 机器之间移植,这样我的 sbt 插件、设置、ivy repo 等就不必在每台计算机上重新设置。 我的方法是把 sbt.bat , sbt
我似乎看到很多答案有人建议使用 生成随机数,通常伴随着这样的代码: std::random_device rd; std::mt19937 gen(rd()); std::uniform_int_d
我正在使用 perl(希望它不会影响任何东西),但我需要知道如何为连接操作设置超时。问题是我不能永远等待连接操作的发生。如果它没有在几秒钟内发生,我宁愿放弃并继续前进。 socket(my $sock
是否有一种简单、可移植的方式(至少是 win32,linux)将 UTF-16 转换为 UTF-8 并返回?最好使用 boost。 谢谢你的帮助,托拜厄斯 最佳答案 两者都是libiconv和 icu
我将飞往澳大利亚(飞行约 15 小时),我想在飞机上继续我当前的项目。 我的项目(CakePHP 框架上的网站)需要一个 LAMP 包,所以我正在寻找一种非常便携、价格合理的设备,可以安装 LAMP,
我想在我们的编程课上在我们学校的计算机(在 Windows 下)上运行 python3。我在家里(使用 Windows)将 python 3.1 安装到 USB 闪存驱动器上,并将其带到学校。但是,它
出于教学目的,我正在寻找适用于 Mac、Windows 和可能的 Linux 的独立 PHP 二进制文件。 计划将二进制文件作为单个文件分发给学生,用于测试 PHP 脚本,而无需安装完整的 Web 服
关于好的 Git GUI 的任何建议。理想情况下应具有以下特征: 没有太多限制,即可以支持相对复杂的功能,例如 rebase ,没有-ff 以“学习模式”显示正在执行的 Git 命令,尤其是具有很多选
我是一名优秀的程序员,十分优秀!