AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-266642

pntshere's questions

Martin Hope
pntshere
Asked: 2018-01-28 21:55:25 +0800 CST

仅压缩路径中的最后一个目录[重复]

  • 2
这个问题在这里已经有了答案:
在不包含父目录的情况下压缩文件 1 个答案
4年前关闭。

备份我的文档根目录(/var/www/html/我可以执行):

zip -r ~/backups/all_zipped-$(date +\%F-\%T).zip /var/www/html/

问题是在创建的 zip 文件中,我得到 3 个基本目录而不是 1 个:

  1. var.
  2. www.
  3. html.

所需的最终状态是只有 1 个基本目录(最后一个)。当然,在这种情况下html(及其 inode)。

使用zip -r ~/backups/all_zipped-$(date +\%F-\%T).zip /var/www/html/*(注意*),没有帮助。

如何在没有整个路径的情况下压缩当前目录?

zip
  • 1 个回答
  • 3949 Views
Martin Hope
pntshere
Asked: 2018-01-28 20:09:35 +0800 CST

采购手动工作,但从脚本完成时失败 [重复]

  • -2
这个问题在这里已经有了答案:
执行 shell 脚本的不同方法 (8 个答案)
在父脚本中包含一个 bash 函数 (1 answer)
4 年前关闭。

使用curl如下:

bash <(curl -s https://raw.githubusercontent.com/user/repo/master/script.sh | tr -d '\r')

我执行了一些远程脚本。

远程脚本包括以下两个方面:

1)命令:

wget -P ~/myAddons/ https://raw.githubusercontent.com/user/repo/master/appendix.sh

2)source ~/myAddons/appendix.sh命令:

该文件appendix.sh包含一些 Bash 别名。


问题

执行远程脚本后,我尝试使用appendix.sh. 没有工作。

只有在手动执行后source ~/myAddons/appendix.sh,别名才起作用。

  • 我至少检查了 3 次远程脚本的source命令和手动命令都是相同的。

问题

为什么source ~/myAddons/appendix.sh直接从远程脚本执行会失败,而手动执行却可以,正确的处理方法是什么?

bash shell-script
  • 1 个回答
  • 72 Views
Martin Hope
pntshere
Asked: 2018-01-28 10:54:16 +0800 CST

重定向到全局文件名失败

  • 3

我在带有 LEMP 堆栈的 Ubuntu 16.04 (xenial) 中使用 Bash 4.3.48(1)。

我尝试以php.ini与版本无关的方式使用printf.

1)版本不可知操作失败:

printf "[PHP]\n post_max_size = 200M\n upload_max_filesize = 200M\n cgi.fix_pathinfo = 0" > /etc/php/*/fpm/zz_overrides.ini

给出以下错误:

bash: /etc/php/*/zz_overrides.ini: 没有这样的文件或目录

2)版本诺斯替操作成功:

printf "[PHP]\n post_max_size = 200M\n upload_max_filesize = 200M\n cgi.fix_pathinfo = 0" > /etc/php/7.0/fpm/zz_overrides.ini

如您所见,除了*vs之外,两者基本相同7.0。

  • 我没有找到关于这个(正则表达式?)问题的线索man printf。
  • 我在 Google 中搜索并没有发现任何关于“允许 printf 中的正则表达式”的信息。

为什么与版本无关的操作失败并且是否有任何绕过?

编辑:如果可能的话,对我来说最重要的是使用单行操作。

bash shell
  • 1 个回答
  • 519 Views
Martin Hope
pntshere
Asked: 2018-01-27 17:14:12 +0800 CST

从多行 heredocument 到单行 herestring,带有换行符

  • 2

我有这个 multilinie heredocument,我希望将其翻译成单行 herestring:

cat <<-"PHPCONF" > /etc/php/*/zz_overrides.ini
  [PHP]
  post_max_size = 200M
  upload_max_filesize = 200M
  cgi.fix_pathinfo = 0
PHPCONF

我能得到的最接近如下:

cat >"/etc/php/*/zz_overrides.ini" <<< "[PHP] post_max_size = 200M upload_max_filesize = 200M cgi.fix_pathinfo = 0"

但我不认为在每个指令之后换行是可能的,因为最终结果是一个string。也许毕竟有一些“非正统”的方式?


heredoc 和 herestring 都旨在替换这个繁重的 sed 操作:

sed -i "s/post_max_size = .M/post_max_size = 200M/ ; s/upload_max_filesize = .M/upload_max_filesize = 200M/ ; s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/*/fpm/php.ini
bash shell-script
  • 2 个回答
  • 980 Views
Martin Hope
pntshere
Asked: 2018-01-25 14:51:45 +0800 CST

Bash别名的替代品(基本上表现得像别名但不是别名的东西)[重复]

  • 1
这个问题在这里已经有了答案:
在 Bash 中,何时使用别名、何时编写脚本以及何时编写函数? (16 个答案)
4 年前关闭。

我需要一个 Bash 别名的 A 替代品(基本上表现得像别名但不是别名的东西)。

我需要这样一个替代品的原因是脚本不能使用别名。也就是说 --- 当我在 Bash 中手动执行别名时,别名工作正常,但当作为脚本的一部分运行时,它无法工作。我知道的解决方案是将别名放在一个临时文件中,但我不想要这种方法。

有没有我可以使用的替代/类似的命令快捷方式,一些“下一代别名”(给出一个比喻),它的行为就像一个别名,但也可以自然地供脚本访问(在其文件被获取之后)?

bash alias
  • 1 个回答
  • 110 Views
Martin Hope
pntshere
Asked: 2017-12-22 03:25:35 +0800 CST

显示控制台输出下面的 1 行或多行

  • 2

当我运行tail ~/SOMEFILE我得到的命令时,例如:

testenv@vps_1:~# tail ~/SOMEFILE
    This is the content of SOMEFILE.

testenv@vps_1:~#但是如果我想在:和输出之间有一个回车怎么办:This is the content of SOMEFILE.

所以最终的结果是这样的:

testenv@vps_1:~# tail ~/SOMEFILE

    This is the content of SOMEFILE.

或这个:

testenv@vps_1:~# tail ~/SOMEFILE


    This is the content of SOMEFILE.

或这个:

testenv@vps_1:~# tail ~/SOMEFILE



    This is the content of SOMEFILE.

注意:第一个示例显示两部分之间的一行间距,第二个示例显示两行,第三个示例显示三行。

有没有办法确保tail像我在示例中所示的那样,在 Bash 中,仅针对这个特定命令(当然不是所有命令),该问题的输出(或任何其他输出)会被间隔开?

bash command-line
  • 3 个回答
  • 967 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve