相关疑难解决方法(0)

如何更改远程Git存储库的URI(URL)?

我在我的硬盘驱动器(本地)上克隆的USB密钥上有一个repo(origin).我将"origin"移动到NAS并成功测试从这里克隆它.

我想知道我是否可以在"本地"设置中更改"origin"的URI,因此它现在将从NAS中提取,而不是从USB密钥中提取.

现在,我可以看到两个解决方案:

  • 将所有内容推送到usb-orign,并将其再次复制到NAS(由于对来源的新提交而意味着大量的工作);

  • 添加一个新的遥控器到"本地"并删除旧遥控器(我担心我会打破我的历史).

git url git-remote

3529
推荐指数
31
解决办法
144万
查看次数

sed命令在文件中查找和替换并覆盖文件不起作用,它会清空文件

我想通过命令行在HTML文件上运行查找和替换.

我的命令看起来像这样:

sed -e s/STRING_TO_REPLACE/STRING_TO_REPLACE_IT/g index.html > index.html
Run Code Online (Sandbox Code Playgroud)

当我运行它并在之后查看该文件时,它是空的.它删除了我的文件的内容.

当我再次恢复文件后运行它:

sed -e s/STRING_TO_REPLACE/STRING_TO_REPLACE_IT/g index.html
Run Code Online (Sandbox Code Playgroud)

stdout是文件的内容,并且已执行查找和替换.

为什么会这样?

unix shell sed io-redirection

582
推荐指数
9
解决办法
70万
查看次数

当找到与sed匹配时替换整行

sed如果匹配模式,我需要替换整行.例如,如果该行为"一二二四四"并且如果存在"六",则整行应替换为"故障".

shell replace sed match

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

如何检查sed是否更改了文件

我试图找到一种聪明的方法来确定传递给sed的文件是否已成功更改.

基本上,我想知道文件是否已被更改,而不必查看文件修改日期.

我需要这个的原因是因为如果sed成功替换了模式,我需要做一些额外的事情.

我目前有:

    grep -q $pattern $filename
    if [ $? -eq 0 ]
    then
        sed -i s:$pattern:$new_pattern: $filename
                # DO SOME OTHER STUFF HERE
    else
        # DO SOME OTHER STUFF HERE
    fi
Run Code Online (Sandbox Code Playgroud)

上面的代码有点贵,我希望能在这里使用一些黑客.

linux bash shell ubuntu sed

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

标签 统计

sed ×3

shell ×3

bash ×1

git ×1

git-remote ×1

io-redirection ×1

linux ×1

match ×1

replace ×1

ubuntu ×1

unix ×1

url ×1