我试图将带有 sed 替换的文件传递给 sed,它忽略了我给它的部分路径:
首先,让我们从一个简单的断言开始:
test -f workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed && echo "exists"
exists
Run Code Online (Sandbox Code Playgroud)
是的,文件存在。现在,问题是:
sed -E -n -f /Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed /Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/data.psv
sed: orkdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed: No such file or directory
Run Code Online (Sandbox Code Playgroud)
它会丢弃o
in之前的所有内容workdir
!
我尝试过一个新的外壳,没有扩展
env -i /opt/brew/bin/bash
bash-5.2$ sed -n -E -f "/Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed" "/Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/data.psv"
sed: orkdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我尝试过旧版本的 bash:
test -f workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed && echo "exists"
exists
Run Code Online (Sandbox Code Playgroud)
我已经尝试过zsh
sed -E -n -f /Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed /Users/cbongior/dev/omc/workdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/data.psv
sed: orkdir/2023-08-03/2023-07-21-01-30-19_2023-07-31-23-59-58/templates.sed: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我也尝试过gsed
env -i /opt/brew/bin/bash
bash-5.2$ sed …
Run Code Online (Sandbox Code Playgroud) 我有 Exuberant Ctags 5.8,我试图忽略 .build 目录:packages/ANY/.build
。我还通过 oh-my-zsh 插件使用 ZSH。
我尝试过使用--exclude=packages/*/.build/
,但我只得到一个
zsh: no matches found: --exclude=packages/*/.build/
我使用的完整命令是:
ctags -R --exclude=node_modules --exclude=.meteor --exclude=packages/*/.build/
如果我有相同的模式,ls packages/*/.build/
那么我会得到每个 .build 目录内容的列表。
这是 ctags 的限制吗?
我把“ #!usr/bin/env python
”放在coroutine.py的第一行,但是当我尝试通过“ ./test.py
”直接运行coroutine.py时,我得到了这个:
zsh: ./coroutine.py: bad interpreter: usr/bin/env: no such file or directory
我的 zshrc 有什么问题吗?
在 中zsh
,当我python -c 'print('howdy')'
从命令行执行时,它会产生以下错误。
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'howdy' is not defined
Run Code Online (Sandbox Code Playgroud)
但是,这python -c 'print("howdy")'
不会,而是产生我期望的输出,即howdy
(作为字符串)发送到stdout
?
我认为 python 在单引号或双引号上是不可知的
我第一次安装brew install terraform
并且运行良好但后来我尝试安装特定版本,如下所示
wget -P terraform_bin/ https://releases.hashicorp.com/terraform/0.12.0/terraform_0.12.0_linux_amd64.zip
unzip -o terraform_bin/terraform_0.12.0_linux_amd64.zip -d terraform_bin/
mv terraform_bin/terraform /usr/local/bin
rm -rf terraform_bin
terraform version
Run Code Online (Sandbox Code Playgroud)
但现在它在 MacOS 中的安装变得混乱,当尝试运行版本时它失败了
我发现 JSON 似乎无法在索引一次后删除数组。下面是有效的 JSON(根据 jsonlint.com
目标:从外部的 {was a valid JSON} 中删除外部数组。
重现步骤
cat file.json | jq .rows
cat file.json | jq .rows[]
观察我的以下错误
zsh: no matches found: .rows[]
我也尝试过 cat file.json | jq .rows | jq .[]
为了更好地衡量,这里是失败的确切文本,但我认为 JQ 应该根据JQ - 如何定义过滤器从输出数组中删除括号、引号和逗号进行这样的处理
{
"selfLink": null,
"id": "eyJwIjoiOGMxZjRkNjAtZDhmNS00YmU2LTg1YjMtYTA0NDExNDVkYmMwIiwicFYiOjE0fQ==",
"title": "My Daily Discovery",
"rows": [{
"modules": [{
"id": "eyJwIjoiOGMxZjRkNjAtZDhmNS00YmU2LTg1YjMtYTA0NDExNDVkYmMwIiwicFYiOjE0LCJtIjoiMTg3ZGVhMTMtNWI1ZS00OWYwLWI5YjktYjc5ODk3M2M2MjVmIiwibVYiOjEsIm1IIjoiYmMyMTQ4NDkifQ==",
"type": "MIX_HEADER",
"width": 100,
"title": "",
"description": "",
"preTitle": "",
"mix": {
"id": "016574ac3abf29b2a6a1ae2c1b2f34",
"title": "My …
Run Code Online (Sandbox Code Playgroud) 首先(mac 使用它%
来作为我~$
在终端中的广告输入,因此我将使用 mac 约定来指示已启动的命令:
~% echo $SHELL
/bin/zsh
~% zsh --version
zsh 5.9 (x86_64-apple-darwin22.0)
Run Code Online (Sandbox Code Playgroud)
test.sh(vim 样式的行号以方便阅读):
1 #!/bin/bash
2 #
3 declare -A myvector
4 echo "wut?"
Run Code Online (Sandbox Code Playgroud)
我假设 zsh (我不知道如何使用)运行 bash (我生来就有它:_),但是
~% chmod u+x ./test.sh
~% ./test.sh
./test.sh: line 3: declare: -A: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...]
wut?
Run Code Online (Sandbox Code Playgroud)
然后执行:
~% . ./test.sh
wut?
Run Code Online (Sandbox Code Playgroud)
我假设 . zsh 是否启动脚本但没有 bash。
我在 unix.stackoverflow.com 和 Ask Different.stackoverflow.com 的 stackoverflow 中检查了有关如何在zsh和bash中使用声明、 …
如何在mac zsh上全局添加Flutter路径,无需在终端的每个窗口中添加
启动 iterm 和终端时出现此错误:
dyld: Library not loaded: /usr/local/lib/libgdbm.4.dylib
Referenced from: /usr/local/bin/zsh
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
据我所知,我无法在终端窗口中输入任何命令。
我发现这个帖子有人遇到同样的错误,建议重新安装 zsh:
这可能对我有用。但是我可以在哪里执行呢?
另一种选择可能是是否可以切换回 bash。