小编Rov*_*ion的帖子

用 sed 路径中的文件内容替换匹配的文件路径

我想编写一个简短的部署脚本,将 javascript 文件的内容输入到单个 html 文件中。这些 js 文件当前声明为:

  <script src="js/jquery-1.8.2.js"></script>
  <script src="js/jquery.rotate-2.2.js"></script>
  <script src="js/underscore.js"></script>
  <script src="js/backbone.js"></script>
  <script src="js/backbone.dualstorage.js"></script>
  <script src="js/favourites.js"></script>
  <script src="js/menuItem.js"></script>
  <script src="js/companies.js"></script>
  <script src="js/lectures.js"></script>
  <script src="js/banquette.js"></script>
  <script src="js/menu.js"></script>
  <script src="js/application.js"></script>
  <script src="js/main.js"></script>
Run Code Online (Sandbox Code Playgroud)

我得到了闲置的 sed 脚本,它几乎可以满足我的要求:

sed -r -e '/<script src="(.*)">/r \1' -e '/<script src="(.*)">/d' index.html
Run Code Online (Sandbox Code Playgroud)

使用上述输入运行此 sed 命令的结果是空字符串。我不确定 \1 的哪一部分失败了。是不是因为引用在 s 命令之外不起作用?

跑步:

sed -r -e 's/<script src="(.*)">/\1/'
Run Code Online (Sandbox Code Playgroud)

结果是:

js/jquery-1.8.2.js</script>
js/jquery.rotate-2.2.js</script>
js/underscore.js</script>
And so on ...
Run Code Online (Sandbox Code Playgroud)

所以显然正则表达式匹配正确的东西。

有没有办法调试 \1 在第一个命令中保存的内容,以查看路径是否不正确?

sed

5
推荐指数
1
解决办法
897
查看次数

使用完整根分区清理 nixos 上的包管理器缓存

在 Ubuntu 上,当根分区已满时,您始终可以运行apt-get autoremoveapt-get cleanapt-get autoclean释放一些空间让包管理器继续工作。但 nixos 上的等效命令似乎在完整根分区上运行时存在一些问题:

$ nix-collect-garbage
...
error: committing transaction: database or disk is full
Run Code Online (Sandbox Code Playgroud)

当您开始运行的原因nix-collect-garbage是清理整个磁盘时,这是相当麻烦的。

nixos

5
推荐指数
1
解决办法
6243
查看次数

如何在 Guix 系统上安装 Spotify?

鉴于 Guix 是一个 GNU 项目,因此不guix search spotify返回任何内容也就不足为奇了。Spotify 提供 Debian 和 Snap 软件包;有没有一种方法可以自动将这些包之一,甚至包流本身转换为 Guix 包定义?更好的是,有人已经这样做了吗?

guixsd

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

使 lsblk 按 id 列出设备

我经常遇到这样的情况,我想将lsblk树中打印设备的输出/dev/sdXY与驱动器/dev/disk/by-id/名称方案中的名称相关联。

linux lsblk

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

列出所有使用 Guix 安装的软件包

如何列出所有通过 Guix 安装的软件包?在 Ubuntu 上,这将通过dpkg -l.

guix

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

标签 统计

guix ×1

guixsd ×1

linux ×1

lsblk ×1

nixos ×1

sed ×1