相关疑难解决方法(0)

在Bash中的命令中扩展变量在单引号内

我想从一个bash shell脚本运行一个命令,该脚本在单引号和变量中有单引号和一些其他命令.

例如 repo forall -c '....$variable'

在此格式中,$进行转义并且不扩展变量.

我尝试了以下变化,但他们被拒绝了:

repo forall -c '...."$variable" '

repo forall -c " '....$variable' "

" repo forall -c '....$variable' "

repo forall -c "'" ....$variable "'"
Run Code Online (Sandbox Code Playgroud)

如果我用值代替变量来执行命令就好了.

请告诉我哪里出错了.

variables bash shell quotes

344
推荐指数
3
解决办法
31万
查看次数

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

何时在shell变量周围包装引号?

有人能告诉我是否应该在shell脚本中包含变量的引号?

例如,以下是正确的:

xdg-open $URL 
[ $? -eq 2 ]
Run Code Online (Sandbox Code Playgroud)

要么

xdg-open "$URL"
[ "$?" -eq "2" ]
Run Code Online (Sandbox Code Playgroud)

如果是这样,为什么?

unix linux bash shell quotes

145
推荐指数
4
解决办法
5万
查看次数

用于在bash中转义字符串的命令

我需要一个bash命令,将字符串转换为转义的字符串.这是一个例子:

echo "hello\world" | escape | someprog
Run Code Online (Sandbox Code Playgroud)

escape命令将"hello\world"变为"hello \\ world".然后,someprog可以按预期使用"hello\world".当然,这是我将要做的事情的简化示例.

bash escaping

86
推荐指数
3
解决办法
10万
查看次数

crontab中的%特殊性如何?

在crontab中,你可以这样做吗?

* * * * * echo $( date +%F) >> /path/date.txt
Run Code Online (Sandbox Code Playgroud)

bash crontab

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

Perl相当于PHP的escapeshellarg

要转义要用作shell参数的字符串,我们使用函数escapeshellarg()in PHP.是否Perl具有同等功能?

php perl

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

如何在不重新编码的情况下合并两个视频

我试图合并两个视频而不重新编码它们.

目前我使用的方法太耗费时间和资源.我只是想合并而不重新编码它们.目前我正在使用

        exec ( "cpulimit -l 90 ffmpeg -i $filename1 -qscale 0  $intermediate1 &> stream1.log" );
        exec ( "cpulimit -l 90 ffmpeg -i $filename2 -qscale 0  $intermediate2 &> stream2.log" );
        $output = '/var/www/html/myserver/merg/'.uniqid().'_merge.'.$ext;
        exec ( "cpulimit -l 90 cat $intermediate1 $intermediate2 | ffmpeg -i - -qscale 0 $output &> stream3.log" );
Run Code Online (Sandbox Code Playgroud)

上面需要花费很多时间..我想要一个快速的方法来做到这一点.

ffmpeg

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

Redis和转义二进制数据

我很难理解如何在Redis中使用二进制数据类型。我想使用命令

   set '{binary data}' 'Alex'
Run Code Online (Sandbox Code Playgroud)

如果二进制数据实际上包含引号或/ r / n怎么办?我知道我可以转义字符,但是我有需要转义的正式字符列表吗?

binary redis

5
推荐指数
2
解决办法
8578
查看次数

需要在linux shell命令中转义的字符列表

在Linux和其他操作系统中,文件名称中可以包含类似字符(,),[,],<space>,等.每当我尝试在我的bash命令中使用任何这些文件时,如cat,ls等,我需要像下面这样逃避它们:

filename abc(10-oct).txt
cat abc(10-oct).txt wont work.
Run Code Online (Sandbox Code Playgroud)

如果我在前面"("")"字符有"\"

cat abc\(10-oct\).txt
Run Code Online (Sandbox Code Playgroud)

这有效

我试图通过Java程序自动化一些Linux shell命令.我不确定我必须要处理的所有字符并逃脱它们.

如果有人可能指向我可以获得整个字符列表的资源,那将是一个很大的帮助.

非常感谢

java regex bash

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

带有名称的 git delete 分支包含特殊字符

请你帮助我好吗?我创建了一个名称错误的 git 分支,我无法删除它,因为该名称包含疯狂的字符。我复制并粘贴了名称,不幸的是在文本的末尾有一些看不见的字符。

>git ls-remote
5fe385e6bd6b49f87f470e0a5b22b67042b179ad        HEAD
dbdadb9d8c630782144028d50f01b84a6ff61612        refs/heads/feature/ABC-495-test1
6660c993b5a5e35922a1f7b3f2bb75c6b0996f6e        refs/heads/feature/ABC-496
dbdadb9d8c630782144028d50f01b84a6ff61612        refs/heads/feature/ABC-501-mapping
dbdadb9d8c630782144028d50f01b84a6ff61612        refs/heads/feature/ABC-501-mapping?
5fe385e6bd6b49f87f470e0a5b22b67042b179ad        refs/heads/master
Run Code Online (Sandbox Code Playgroud)

我想删除名为“ refs/heads/feature/ABC-501-mapping? ”的分支,但我不知道如何:(

谢谢

git branch special-characters

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

标签 统计

bash ×5

branch ×2

git ×2

quotes ×2

shell ×2

binary ×1

crontab ×1

escaping ×1

ffmpeg ×1

java ×1

linux ×1

naming ×1

perl ×1

php ×1

redis ×1

regex ×1

special-characters ×1

unix ×1

variables ×1