小编lon*_*556的帖子

如何撤消`set -x`?

set -x在终端输入。

现在终端继续打印在我的输出顶部运行的最后一个命令,因此命令

~]$echo "this is what I see"
Run Code Online (Sandbox Code Playgroud)

返回

+ echo 'this is what I see'
this is what I see
Run Code Online (Sandbox Code Playgroud)

没有手册页set,我该如何set -x关闭?

shell

90
推荐指数
3
解决办法
9万
查看次数

检查输入数字是否为整数

我试图检查一个输入是否是一个整数,我已经检查了它一百次,但没有看到这里的错误。唉,它不起作用,它会触发所有输入(数字/字母)的 if 语句

read scale
if ! [[ "$scale" =~ "^[0-9]+$" ]]
        then
            echo "Sorry integers only"
fi
Run Code Online (Sandbox Code Playgroud)

我玩过引号,但要么错过了它,要么什么也没做。我做错了什么?有没有更简单的方法来测试输入是否只是整数?

bash quoting regular-expression test

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

你如何让 fgrep 找到文字“--help”?

fgrep --help | fgrep "--help"
Run Code Online (Sandbox Code Playgroud)

仅返回整个 fgrep --help,如何仅返回其中包含文字“--help”的行?

引号没有任何作用,\-\-help.

grep options arguments

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

替换文件中的字符串并覆盖文件

我使用目录编写了我的脚本~/deleted(这是一个很长的脚本)。使用后,~/deleted整个脚本。我想让用户通过将路径放在~/.rm.cfg.

我的文件是这样开始的:

#!/bin/bash

defaultpath=~/deleted

if [ -s ~/.rm.cfg ]
then
    defaultpath=$(head -1 ~/.rm.cfg)
fi
Run Code Online (Sandbox Code Playgroud)

我需要更换每一个~/deleted$defaultpath我的脚本。有没有办法在命令行中执行此操作,以便保存并替换原始文件?

我无法让 perl 或 sed 工作。

bash text-processing files

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