是否有客观上更好的方法在bash脚本中创建临时文件?
我通常只是将它们命名为我想到的任何内容,例如tempfile-123,因为当脚本结束时它将被删除.除了覆盖当前文件夹中可能的tempfile-123之外,还有什么不利吗?或者以更仔细的方式创建临时文件有什么好处?
如何仅使用像sed和cat这样的bash命令来恢复某些文本块的顺序?我想要的是像tac,但不是逐行操作,而是逐块操作.例:
从
/Section 3/
Rabbits
Dogs
Cats
/Section 2/
Eagles
Mice
/Section 1/
Dogs
Rabbits
Lemmings
Run Code Online (Sandbox Code Playgroud)
至
/Section 1/
Dogs
Rabbits
Lemmings
/Section 2/
Eagles
Mice
/Section 3/
Rabbits
Dogs
Cats
Run Code Online (Sandbox Code Playgroud)
在某些文件中,块的开头用斜杠标记,如上例所示.在其他情况下,块仅通过它们之间存在一个或多个空行来标记.
我已经看到函数在bashrc中定义了两种方式:
dosomething() { ... }
Run Code Online (Sandbox Code Playgroud)
和
function dosomething() { ... }
Run Code Online (Sandbox Code Playgroud)
使用function声明有什么不同?
我已经知道sed的\1,\2......,\n以及最近发现,它有一个有用的\U选项来创建大写.还有哪些其他有用的"反斜杠选项" \U?
我检查了sed手册页,但没有在那里找到它.
使用sed,如何将字母"a"更改为"A",但前提是它重复显示为两个或多个连续字母.示例来自:
galaxy
ear
aardvak
Haaaaaaaaa
Run Code Online (Sandbox Code Playgroud)
成
galaxy
ear
AArdvak
HAAAAAAAAA
Run Code Online (Sandbox Code Playgroud)