相关疑难解决方法(0)

如何删除名称以“-”(连字符又名破折号或减号)开头的文件?

如何删除文件名以破折号(连字符或减号)开头的文件-?我通过 ssh 连接到远程 OSX 服务器,并且我的目录中有这个文件:

tohru:~ $ ls -l
total 8
-rw-r--r--    1 me  staff  1352 Aug 18 14:33 --help
...
Run Code Online (Sandbox Code Playgroud)

我怎么--help能从 CLI 中删除?这个问题是我偶尔以不同形式遇到的问题,这些文件很容易创建,但很难摆脱。

我试过使用反斜杠

rm \-\-help
Run Code Online (Sandbox Code Playgroud)

我试过引号

rm "--help"
Run Code Online (Sandbox Code Playgroud)

如何防止将减号(破折号或连字符)字符解释为选项?

command-line shell options quoting rm

428
推荐指数
6
解决办法
18万
查看次数

以 -(破折号)开头的文件名

-l我的目录中有文件调用

现在我试着做

for i in *; do stat -c "%s %n" "$i"; done
Run Code Online (Sandbox Code Playgroud)

它列出了所有大小的文件,但在输出中间有类似的东西

395 koko.pub
stat: invalid option -- 'l'
Try 'stat --help' for more information.
2995974 list.txt
Run Code Online (Sandbox Code Playgroud)

所以它不能-l作为正常的文件名处理,我如何从 获得所需的行为stat

shell shell-script filenames quoting

8
推荐指数
2
解决办法
2883
查看次数

为什么 var=- 不起作用?

在写问题时:

如何touchcat文件命名-

我试图概括为一个命名文件-存储在变量中的情况。

在 中zsh,我尝试设置一个变量以包含单个连字符:

% var=-
% echo $var

% var='-'
% echo $var

% var=\-
% echo $var

%
Run Code Online (Sandbox Code Playgroud)

为什么这些不起作用?

为什么在这方面zsh有所不同bash

如何设置$var-

zsh

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

标签 统计

quoting ×2

shell ×2

command-line ×1

filenames ×1

options ×1

rm ×1

shell-script ×1

zsh ×1