这是其中之一"肯定有一些通用实用程序比我提出的快速和肮脏的东西更好"问题.就像我一样,我知道如何以几种临时方式做到这一点,但是我喜欢使用标准.
简介:我正在寻找合理的标准和无处不在的工具来确定我目前的地理位置.可从Linux/UNIX命令行,Perl,Emacs等调用.
详情:
一个微不足道的情况激发了这个问题(但毫无疑问,更重要的应用程序):我使用emacs org-mode,经常记录日志或日记.我实际上并没有太多使用官方组织模式日记 - 主要是,我将时间戳放在普通的组织模式日志中,隐藏在看起来像链接的元数据中.
[[metadata: timestamp="<2014-01-04 15:02:35 EST, Saturday, January 4, WW01>" <location location="??" timestamp="??"/>][03:02 PM]]
Run Code Online (Sandbox Code Playgroud)
如你所见,我很久以前就添加了记录我位置的功能.但到目前为止我不得不手动设置它.我很懒,经常忽略手动设置位置.(次要注意:我记录了我最后一次手动设置位置,在移动时有用,而忽略了手动更改我的位置.
我更希望有自动推断我的位置的代码.特别是因为我上个月旅行的时间相当多,但是对于我每天都在这里工作的六个地方来说可能更有用:家庭,工作,海边,标准餐厅,我在吃午餐或早餐. .
我可以使用任何一种工具来计算我的位置,例如
我在哪里 - 在Google地图上查看您当前的位置 - ctrlq.org/maps/where/
Perl CPAN包,例如IP :: Location - 将IP地址映射到某个位置
和启发式,如查看WiFi SSID等.
我已经编写了一些东西.
但是......这比我编码的更深入.
上述技术都不是完美的 - 例如,我可能没有net.connectivity等.有些是特定于操作系统的.
如果已经有一些开源设施,我应该使用它.
因此我的问题是:有没有合理无处不在的地理位置服务?
我的收藏
跨越OS操作
命令行实用程序
可以连接到广泛可用的标准地理定位服务
即使无法连接到标准地理定位服务或Internet,也能正常工作
定制
学到了
我正在一个需要在数据库中存储Tree结构的项目中,过去我已经处理过相同的情况,并且使用了特定的解决方案(如下所述)。
我知道没有BEST解决方案,通常最好的解决方案是提供主要优点的解决方案,但是毫无疑问,这是最糟糕的解决方案,我不想使用它。
正如我所说的,我需要:
我过去使用的解决方案包括使用VARCHAR(X * Y)主键,其中:
即
如果我具有:-最多3个级别,则X = 3-
每个节点最多20个直接子代,Y = 2(20个有两个字符-然后可以存储多达99个子代)
PRIMARY KEY列将创建为 VARCHAR(6)
ID是PARENT ID+的组合NODE_ID
NODE ID是一个增量数值,在左侧用零填充。
然后,第一层中的节点将存储为:
[01,02,03,04,...,99]
第二层中的节点将存储为:
[0101, 0102, 0103, ..., 0201, 0202, 0203, ... , 9901, 9999]
第三层中的节点将存储为:
[010101, 010102, 010103, ..., 020101, 020102, 020301, ... , 990101, 999999]
等等...
优点:
select ... where id like '0101%')的子级列表非常容易缺点:
X和Y值是伟大的id关键将是太长了我可以使用 GitHub 实现这一点。但是我无法对 GitLab 做同样的事情。目前,我所拥有的是:
curl -u "$user:$token" -H "Content-Type:application/json" -H "PRIVATE-TOKEN:$token" \
-X DELETE https://git.lab.com/api/v4/projects/$repo_name
Run Code Online (Sandbox Code Playgroud)
然后我收到这个错误:
curl: (35) error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error
Run Code Online (Sandbox Code Playgroud)
我已经有一个使用 curl 在命令行上创建 GitLab 存储库的工作脚本,所以我的 curl 工作正常。我只需要删除部分。
我使用以下命令创建了一个 znode:
zookeeper-0:/opt/zookeeper/bin # ./zkCli.sh create /mynode content digest:user:pass:cdrwa
Run Code Online (Sandbox Code Playgroud)
现在如何使用 zkCli.sh 实用程序访问 znode?
zookeeper-0:/opt/zookeeper/bin # ./zkCli.sh get /mynode
Connecting to localhost:2181
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
Authentication is not valid : /mynode
zookeeper-0:/opt/zookeeper/bin #
Run Code Online (Sandbox Code Playgroud)
getAcl 显示以下内容:
zookeeper-0:/opt/zookeeper/bin # ./zkCli.sh getAcl /mynode
Connecting to localhost:2181
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
'digest,'user:pass
: cdrwa
zookeeper-0:/opt/zookeeper/bin #
Run Code Online (Sandbox Code Playgroud)