标签: syntax

Bash 中的括号、大括号、花括号

谜底来了:

如果我做:

touch file{1,2,3}
Run Code Online (Sandbox Code Playgroud)

它创建文件 1、文件 2、文件 3

如果我这样做

rm file[1-3]
Run Code Online (Sandbox Code Playgroud)

它会删除它们。

但如果我这样做

touch file[1-3] 
Run Code Online (Sandbox Code Playgroud)

它创建:

file[1-3]
Run Code Online (Sandbox Code Playgroud)

为什么?

bash syntax

9
推荐指数
1
解决办法
1544
查看次数

管道和结束破折号的语法是什么意思?

免责声明。我是 Windows 的长期用户,并且刚刚开始了解 Linux 范式。虽然对此感到兴奋,但我明白我的配方可能由于无知而选择不当。

我收到了一个答案,其中的内容包括以下行,我需要帮助解释(经过一段时间的谷歌搜索,我有一个很好的猜测,但我想让它更可靠)。

curl -sL https://blabla | sudo -E bash -
Run Code Online (Sandbox Code Playgroud)

我知道我们首先创建对 URL blabla的 Web 调用,然后(这是弹出的管道魔术)执行具有管理员提升权限的命令以打开新的终端窗口实例。

但是,当我尝试消化该命令时,我了解到它等效于以下序列。

curl --silent --location https://blabla
sudo -E bash -
Run Code Online (Sandbox Code Playgroud)

问题1:正确理解吗?

进一步,我试图了解第二行的开关是什么,并使用如下语句。

man bash | sed -n '/-E/,+1p'
Run Code Online (Sandbox Code Playgroud)

但是,我真的看不出“ -E ”是什么的简写(它是--empty还是它--或者也许是--err)并被困在解释上。另外,我无法弄清楚单独的破折号字符的作用,我不确定如何使用上面的语句在手册中查找它。

问题 2:如何查找开关的详细语法?

问题3:没有开关的破折号是什么意思?

command-line bash syntax

9
推荐指数
1
解决办法
4740
查看次数

为什么ksh中的“[[”和“-e xxx”之间需要空格?

例如,以下命令不起作用:

if [[-e xyz]]; then echo File exists;fi
Run Code Online (Sandbox Code Playgroud)

ksh 给出以下错误

[[-e: command not found
Run Code Online (Sandbox Code Playgroud)

那是因为“[[-”不明确吗?

command-line syntax ksh

9
推荐指数
1
解决办法
2345
查看次数

我可以在 nano 中启用括号匹配吗?

else if( d && ( (d <= b && d <= s) || (!b && !s) )   smallest = d
Run Code Online (Sandbox Code Playgroud)

考虑这段 C++ 代码。我们可以进行括号匹配(当光标位于右括号上时突出显示左括号,反之亦然)?

nano syntax

7
推荐指数
1
解决办法
4487
查看次数

“语法错误:未终止的引用字符串”

我正在尝试使用备份脚本来备份我的 sql 数据库和网站文件。我正在运行 Ubuntu 12.04 32 位版本和 zPanel。

还有这些变量是什么:

MYSQL="$()"
MYSQLDUMP="$()"
GZIP="$()"

我假设第一个是数据库名称。

这是脚本:

#!/bin/sh
#----------------------------------------------------------------
# Daily Backup Routine - Backup and Sync to Dropbox
# This script creates a backup using today's date, then deleted
# any backups made 3 days ago. If run every day it will ensure
# you have a week's worth of backups of your MySQL databases and
# zPanel web directories. 
#
# Uses whatever Dropbox account is running on the server.
# …
Run Code Online (Sandbox Code Playgroud)

bash backup scripts syntax

6
推荐指数
1
解决办法
13万
查看次数

语法错误:文件 .bash_profile 意外结束

我将以下代码添加到空的 ~/.bash_profile 文件中,在重新启动并通过 ssh 登录到服务器后,我收到语法错误:文件 .bash_profile 意外结束

NODE_ENV=production
if [ -f ~/.bashrc ]; then   . ~/.bashrc fi
Run Code Online (Sandbox Code Playgroud)

bash syntax

6
推荐指数
1
解决办法
583
查看次数

如何修复 youtube-dl:运行它会给出有关语法不正确的错误消息

我最近完全从头开始安装了 22.04。刚才我按照说明使用 wget (来自 github.com)安装 youtube-dl:

sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
Run Code Online (Sandbox Code Playgroud)

好像下载了,但是使用的时候却提示:

$ youtube-dl https://www.youtube.com/watch?v=xSyDTIAX_oE
/usr/local/bin/youtube-dl: line 1: --2023-03-05: command not found
/usr/local/bin/youtube-dl: line 2: syntax error near unexpected token `('
/usr/local/bin/youtube-dl: line 2: `Resolving yt-dl.org (yt-dl.org)... 95.143.172.170, 2001:1a50:11:0:5f:8f:acaa:177'
Run Code Online (Sandbox Code Playgroud)

我不确定我是否提供了足够/适当的信息来提出我的问题。如果我需要解释其他内容,请告诉我。显然 youtube-dl 有一段时间无法工作,但网站说它又恢复正常了。我不知道这是否是问题的一部分?

我按照建议尝试了这些命令:

file /usr/local/bin/youtube-dl
/usr/local/bin/youtube-dl: Unicode text, UTF-8 text, with very long lines (564)

head /usr/local/bin/youtube-dl
--2023-03-05 12:38:51--  https://yt-dl.org/downloads/latest/youtube-dl
Resolving yt-dl.org (yt-dl.org)... 95.143.172.170, 2001:1a50:11:0:5f:8f:acaa:177
Connecting to yt-dl.org (yt-dl.org)|95.143.172.170|:443... connected.
HTTP request sent, awaiting response... 302 …
Run Code Online (Sandbox Code Playgroud)

downloads wget syntax youtube-dl 22.04

6
推荐指数
1
解决办法
2万
查看次数

ps的-aux选项代表什么?

您经常将选项传递给 CLI 命令,这会导致函数表现不同。它们都有一定的意义,例如

  • -v意思是“冗长”
  • -l意思是“列表”

ps命令列出了所有正在运行的进程,但如果您向其传递该 -aux选项,它将显示所有用户(包括 root)的进程。

所以我的问题是:命令-aux的参数ps代表什么?

command-line syntax

5
推荐指数
1
解决办法
6462
查看次数

使用 ExifTool 将标签添加到 jpeg

我需要有关终端语法代码的帮助,请使用 ExifTool 将标签添加到 jpeg 文件。我想为我祖先的一些旧扫描 jpeg 照片添加一般注释,以便我的孩子将来能够轻松访问。我使用的是 Linux Ubuntu 20.04 LTS

metadata syntax exiftool

5
推荐指数
1
解决办法
1676
查看次数

Linux 和 Ubuntu 的命令行结构是否相同?

我是 Linux 世界的新手。我很想知道 Linux 和 Ubuntu 之间的命令行语法是否相同?

command-line syntax

4
推荐指数
2
解决办法
6985
查看次数

标签 统计

syntax ×10

bash ×4

command-line ×4

22.04 ×1

backup ×1

downloads ×1

exiftool ×1

ksh ×1

metadata ×1

nano ×1

scripts ×1

wget ×1

youtube-dl ×1