当前位置: 首页 > 面试题库 >

$ HOME和'〜'(波浪号)之间的区别?

淳于亦
2023-03-14
问题内容

我一直以为$HOME并且~是完全相同的,因此可以互换使用。今天,当我尝试在共享服务器上安装与memcached的python绑定
pylibmc时 ,使用的~错误给了我,但没有给我 $HOME。我想说明原因。

libmemcachedpylibmc 的要求。我在主目录下安装了 libmemcached, 因为服务器上没有root。结果,要安装
pylibmc ,我需要确保安装脚本知道在哪里可以找到 libmemcached

执行时python setup.py install --with-libmemcached=~,安装脚本运行

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall \
  -严格的原型-fPIC -DUSE_ZLIB -I〜/ include \
  -I / usr / local / include / python2.7 -c _pylibmcmodule.c \
  -o build / temp.linux-i686-2.7 / _pylibmcmodule.o -fno-strict-aliasing

这给出了找不到 libmemcached 的错误。

如果更改为--with-libmemcached=$HOME,脚本将运行

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall \
  -严格的原型-fPIC -DUSE_ZLIB -I / home / waterbotte / include \
  -I / usr / local / include / python2.7 -c _pylibmcmodule.c \
  -o build / temp.linux-i686-2.7 / _pylibmcmodule.o -fno-strict-aliasing

没有任何问题。看来问题是波浪号没有得到解决。但为什么?


问题答案:

Shell会替换~为用户的主目录( update ;或者,如果其他用户的主目录~后跟a
,则替换其他用户的主目录/),但前提是它是单词的第一个字符。

--with-libmemcached=~``~在一开始就没有,所以外壳不理会它。



 类似资料:
  • 问题内容: 选择所有紧随元素之后的元素 选择元素前面的每个元素 如果一个元素紧接在一个元素之后,那是否不意味着该元素前面有一个元素? 无论如何,我正在寻找一个选择器,可以在其中选择紧接 在 给定元素 之前 的元素。 问题答案: 相邻的兄弟选择器X + Y 相邻的同级选择器具有以下语法:E1 + E2,其中E2是选择器的主题。如果E1和E2在文档树中共享相同的父项,并且E1紧随E2而不考虑非元素节点

  • 本文向大家介绍浏览和冲浪之间的区别,包括了浏览和冲浪之间的区别的使用技巧和注意事项,需要的朋友参考一下 浏览 浏览是指没有任何事先目的或目标的网站访问。用户通常浏览互联网时,会注意到他/她需要的信息。 冲浪 冲浪是指使用搜索引擎搜索特定信息。冲浪通常比浏览耗时,因为用户倾向于在Web上搜索和定位所需的信息。 以下是浏览和冲浪之间的重要区别。 序号 键 浏览 冲浪 1 使用完成 使用网络浏览器进行浏

  • 问题内容: 在两个不同的表之间使用逗号或联接有什么区别? 例如以下两个代码: 问题答案: 执行它们时并没有真正的区别,但是在工作中存在可读性,一致性和减轻错误的问题: 想象一下,如果您有4张桌子,如果使用老式的INNER JOIN方法,那么最终结果将是: 使用显式的INNER JOINS它将是: 后者显示了您在桌子前面的确切位置。它具有更高的可读性,并且更容易出错,因为与在WHERE中添加另一个A

  • 问题内容: Python中的tilde运算符有什么用? 我能想到的一件事是在字符串或列表的两面都做一些事情,例如检查字符串是否为回文: 还有其他好的用法吗? 问题答案: 它是从C借来的一元运算符(采用单个参数),其中所有数据类型只是解释字节的不同方式。这是“取反”或“补码”操作,其中输入数据的所有位都取反。 在Python中,对于整数,该整数的二进制补码表示形式的位被颠倒(对于每个单独的位而言),

  • 问题内容: 这是我的脚本: 在“ read caminho”中,我可能会从用户那里收到〜/ somefolder之类的路径。当脚本接收到这样的路径时,mv和mkdir都不会进行波浪号扩展,因此它将尝试创建〜/ somefolder而不是/ home / username / somefolder,因此失败。 如何确保将波浪号转换为HOME变量? 问题答案: 您可能需要评估该变量以正确替换它。一个例

  • 问题内容: var attr = ~’input,textarea’.indexOf( target.tagName.toLowerCase() ) ? ‘value’ : ‘innerHTML’ 我在一个答案中看到了它,而我从未见过。 这是什么意思? 问题答案: 是按位运算符,用于翻转其操作数中的所有位。 例如,如果您的数字为,则其对IEEE754浮点数JavaScript如何处理数字的二进制表