BASH - 操作URL

时间:2016-04-11 20:00:19

标签: mysql bash

我忙于使用bash中的脚本,其工作是将内容从子目录移动到FTP根目录的主目录。如果文件应包含数据库,则脚本必须更新数据库中的所有SQL条目。

MySQL查询不是问题,但获取搜索和替换的值正在逃避我。

例如:

我在http:// example.com/mysub

中有一个网站

我需要将其移至http:// example.com并更改数据库

我需要从http:// example.com/mysub中删除http://以便我可以运行搜索并将值替换为example.com

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

public static void displayTaxTable(Tax tObj, int incomeStart, int incomeEnd, int stepVal) {
    String s1 = "Taxable Income";
    String s2 = "Single";
    String s3 = "Married Joint";
    String s4 = "Married Separate";
    String s5 = "Head of house";
    System.out.printf(
            "%-20s%-12s%-4s%21s%16s\n", s1, s2, s3, s4, s5);
        for (int i = incomeStart;
                i <= incomeEnd; i += stepVal) {
            System.out.printf("%4d%19.0f%16.0f%16.0f%20.0f\n", i,
                    new Tax(Tax.SINGLE_FILER, bracket, rate, i).getTax(),
                    new Tax(Tax.MARRIED_JOINTLY_OR_QUALIFYING_WIDOW, bracket, rate, i).getTax(),
                    new Tax(Tax.MARRIED_SEPARATELY, bracket, rate, i).getTax(),
                    new Tax(Tax.HEAD_OF_HOUSEHOLD, bracket, rate, i).getTax()
            );

        }

    }

还处理https, 示例

sed -r 's_\bhttps?://__'

答案 1 :(得分:0)

您可以启用 extglob shot -s extglob)并运行以下参数扩展 *:

var='https://example.com'
printf '%s\n' "${var#http?(s)://}"

这将从http://的左侧删除第一次出现的https://var

参数扩展 *:执行man bash | less +/Parameter\ Expansion或在Bash FAQ 37进一步阅读。或两者!