如何使用 unix 命令行过滤器丢弃文件的最后 n 行?
这将与以下情况相反tail
:tail
丢弃前 n 行,但将其余行通过管道传输,但我希望该命令通过管道传输除最后 n 行之外的所有内容。
不幸的是,我没有找到类似的东西 - 也head
无济于事。编辑:至少在 Solaris 中它不接受否定论据。
更新:我最感兴趣的是适用于大文件的解决方案,即日志文件,您可能想要检查除了最后几分钟之外发生的情况。
我真的很喜欢,gnu screen
但是在我使用它时我的环境出现了问题。
例子:
username@domain:/var/www$ l
Display all 130 possibilities? (y or n)
Run Code Online (Sandbox Code Playgroud)
当您单击[Tab]
以执行自动完成时,屏幕会在很短的时间内闪烁(看起来像白屏,但我可以在很短的时间内看到它)。
当我在正常/非屏幕环境中执行相同的操作时,没有任何问题。
这是我的.screenrc
样子:
attrcolor b ".I"
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
defbce "on"
term screen-256color-bce
Run Code Online (Sandbox Code Playgroud) 为什么将文件的输出重定向到自身会产生一个空白文件?
在 Bash 中说明,为什么
less foo.txt > foo.txt
Run Code Online (Sandbox Code Playgroud)
和
fold foo.txt > foo.txt
Run Code Online (Sandbox Code Playgroud)
产生空foo.txt
?由于诸如此类的附加less eggs.py >> eggs.py
会生成 中文本的两个副本,因此eggs.py
人们可能会期望覆盖会生成文本的一个副本。
请注意,我并不是说这是一个错误,它更可能是指向有关 Unix 的深层内容的指针。
上下文:我在我的机器上添加了一个驱动器,无论出于何种原因,我都无法访问其上的目录(?)。
ls -l
ls: cannot access Downloads: No such file or directory
total 56
d????????? ? ? ? ? ? Downloads
drwxr-xr-x 26 user 12288 Aug 12 23:29 foo
Run Code Online (Sandbox Code Playgroud)
ls -a
. .. Downloads foo
Run Code Online (Sandbox Code Playgroud)
光盘
bash: cd: Downloads: No such file or directory
Run Code Online (Sandbox Code Playgroud)
触碰
touch: cannot touch ‘Downloads’: File exists
Run Code Online (Sandbox Code Playgroud)
mkdir 下载
mkdir: cannot create directory ‘Downloads’: File exists
Run Code Online (Sandbox Code Playgroud)
猫下载
cat: Downloads: No such file or directory
Run Code Online (Sandbox Code Playgroud)
文件下载
Downloads: cannot open `Downloads' (No such file or directory)
Run Code Online (Sandbox Code Playgroud)
mv 下载下来 …
如何使用 awk 或 sed 将字符串打印到第一个下划线字符?
前:
host100_044 2
host101_045 2
host102_046 2
Run Code Online (Sandbox Code Playgroud)
后:
host100
host101
host102
Run Code Online (Sandbox Code Playgroud) 我目前正在使用 GNU Screen 工具。现在我的问题是是否有一种方法可以组织或更改控制台窗口底部显示的屏幕/屏幕列表的顺序。我还没有设法做到这一点,但是对我的屏幕进行排序将是一件好事。
是否仅仅是因为在用户空间中从文件名到 inode 编号很难,并且您无法从那里读取 inode?
Unix rev 实用程序反转文件中的行。我如何在 Cygwin 下得到这个?我需要安装哪个包?
有各种各样的命令,例如“systemctl”、“hostnamectl”或“jounralctl”。我意识到“ctl”是控制的简写,但我想知道“ctl”的普遍接受的发音是什么。
>>> bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
ibase = 16
obase = 56
BE753DE5C17F1B6C9F5D1E8A628B74B0FFC4A7
13 54 52 19 83 18 71 14 32 84 08 11 54 04 20 50 49 70 30 00 29 44 7\
7 33
Run Code Online (Sandbox Code Playgroud)
输入显然是十六进制的。现在我假设输出应该是基数为 56 的“数字”的十进制表示。但是最高输出块应该是 55,对吗?那么为什么我会看到一个“83”和一个“84”呢?
我有一大堆目录,每个目录都有一系列 .pdf 文件。其中一些文件已成功转换为 .csv,有些则没有。使用以下示例目录列表find ./
:
./test5.pdf.csv
./test6.pdf
./test1.pdf.csv
./test3.pdf
./test1.pdf
./test3.pdf.csv
./test4.pdf.csv
./test7.pdf
./test2.pdf
./test5.pdf
./test4.pdf
./test2.pdf.csv
./test8.pdf
Run Code Online (Sandbox Code Playgroud)
如何返回未成功转换的文件列表?
换句话说,哪些文件没有 .csv.pdf 对应文件?
在本例中,它将是 test{6,7,8}.pdf。
unix-utils ×11
unix ×8
gnu-screen ×2
bash ×1
bc ×1
cygwin ×1
find ×1
head ×1
installation ×1
linux ×1
shell ×1
solaris ×1
systemctl ×1
tail ×1