我试图只获取curl命令输出的第一行。(对不起,如果这令人困惑)
比方说,例如,我简单地运行:
# curl http://localhost
<!-- This is the hidden line i want to grab. -->
<!DOCTYPE html>
<html>
<head>
..
..
Run Code Online (Sandbox Code Playgroud)
如果我想要这里输出的第一行,该怎么办,即:
<!-- This is the hidden line i want to grab. -->
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这样的事情,但还没有运气:
# curl http://localhost | head -n 1
# curl http://localhost | sed -n '1!p'
Run Code Online (Sandbox Code Playgroud)
.. 等所有给我垃圾输出,像这样:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- …Run Code Online (Sandbox Code Playgroud) 我使用 ffmpeg 来剪切视频文件。我使用的格式是这样的:
ffmpeg -i input.avi -ss 00:06:30 -to 00:07:15 -c copy output.avi
Run Code Online (Sandbox Code Playgroud)
不幸的是,这会在我的输出视频的开头留下一些黑框,所以我丢失了视频的某些部分。在我尝试的一个视频中,这持续了一秒钟,在另一个视频中,黑框持续了 4 秒。
有趣的是,当我使用相同的命令时,同一视频存在完全相同数量的黑框。意思是,无论我为第二个视频做了多少次,在所有输出中,输出视频在前 4 秒都是空白的!
不过声音效果很好!
以下是我尝试过但不起作用的其他一些命令格式:
ffmpeg -ss 00:01:00 -i video.mp4 -to 00:02:00 -c copy cut.mp4
ffmpeg -ss 00:01:00 -i video.mp4 -to 00:02:00 -c copy -copyts cut.mp4
Run Code Online (Sandbox Code Playgroud)
我用我使用的命令找到了我的解决方案,但后来出现了这个问题
编辑:我发现如果我不使用-c copy 标志,那么我就没有黑框:
ffmpeg -i input.avi -ss 00:06:30 -to 00:07:15 output.avi
Run Code Online (Sandbox Code Playgroud)
但是,使用这种方法,我的输出视频的质量明显低于输入视频,或以前方法的输出视频。所以我回到了第一广场。
今天我以为我在做一个简单的操作:
git blame file | sort -k 3
Run Code Online (Sandbox Code Playgroud)
获取file按最后更改日期排序的所有行。不幸的是,它似乎没有正确排序。如果我执行以下操作,它确实有效:
git blame file | cut -c 20- | sort
Run Code Online (Sandbox Code Playgroud)
这只是将线路的第一部分砍掉,然后进行排序。该命令的成功表明,我认为sort 可以做实际上我是想操作。为什么不起作用?
这是来自输出的示例行git blame file:
35d8e9eb (username 2007-01-17 03:58:04 +0000 155) Some text on line 155
Run Code Online (Sandbox Code Playgroud)
编辑:除了3在原始命令行中使用任何合理的数字似乎工作正常 - 我可以按哈希(字段 1)、用户名(字段 2)、一天中的时间(字段 4)或行号(字段6),但日期(字段 3)不起作用 - 我根本无法确定它实际上以什么顺序结束......
编辑 2:我制作了一个显示相同问题的经过消毒的输入文件。这是cleaned.txt:
cb7bb041 (eeeeeee 2010-12-14 19:41:18 +0000 42)
35d8e9eb (cccccccc 2007-01-17 03:58:04 +0000 135)
d7377fa9 (hhhhhhhh 2010-01-30 04:26:28 +0000 178)
Run Code Online (Sandbox Code Playgroud)
和输出sort -k 3 cleaned.txt …
例子:
3|100|test@test.com|0|0|6:1,10,11,12,13,2,3,4,5,6,9|7:1,10,11,13,16,2,4,5,6,9|
Run Code Online (Sandbox Code Playgroud)
grep 后的预期视图:
test@test.com
Run Code Online (Sandbox Code Playgroud) 我有一个非常大的文本文件(约 8000 万条记录/行),其中每条记录有 7 个属性。每个属性之间都有一个选项卡。
我想要做的是在新文件中复制每条记录/行的每三个和最后一个属性/标记。
任何想法如何使用 cut 命令来做到这一点?
while read line
do
echo $line
calendar_date=$(cut -d\ -f1 $line)
hr_of_day=$(cut -d\ -f2 $line)
echo "date: $calendar_date hr: $hr_of_day"
done < $FILE
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
date: hr:
2011-06-30 | 23
cut: 2011-06-30: No such file or directory
cut: |: No such file or directory
cut: 23: No such file or directory
Run Code Online (Sandbox Code Playgroud)