之前我已经说过我不擅长编写脚本,所以我将下面的文件从共享目录复制到我的更改权限的地方。但后来我想删除每个CSV文件中的第一行 - 标题 - 然后我想让它每小时运行一次。
cd /users
scp dehpc14_Disk_Quota_Report.csv /h/u544835
scp dehpc14_User_Disk_Usage.csv /h/u544835
cd /h/u544835
chmod 755 dehpc14_Disk_Quota_Report.csv
chmod 755 dehpc14_User_Disk_Usage.csv
*在此处插入删除csv第一行*
任何人都可以帮我删除CSV文件的第一行,并让它每小时自动运行一次,或者指导我做一些我可能理解的事情来解决它吗?
答案 0 :(得分:79)
您可以使用sed
删除文件的第一行:
sed -i '' 1d file.csv
如果您只想获取没有第一行的文件内容,并且没有修改文件,请删除-i ''
标记:
sed 1d file.csv
这里1d是执行命令:
所以 1d 表示'删除第1行'
如果你想获得第一行,你也可以使用sed:
sed -n 1p file.csv
此处 p 代表'print'或
sed 1q file.csv
(参见William Pursell的评论)
答案 1 :(得分:2)
我试图从CSV中删除第一行,将cd删除到该位置,然后问题的答案对我不起作用,正在获取
sed:无法读取1d:没有此类文件或目录
因此,我使用了@amit所说的here
sed -i '1d' filename.csv
答案 2 :(得分:1)
在寻找这个答案时,我也找到了另一个帖子。在那里,他们说使用尾巴,实际上并没有做出OP所需要的修改。您当然可以复制到临时文件。此外,如果您要将文件流式传输到另一个工具,您可以在管道中使用“tail”,而不必编写临时文件或写入磁盘。
How can I remove the first line of a text file using bash/sed script?
答案 3 :(得分:1)
要创建没有标题的新CSV文件,您可以执行以下操作:
#start-vote {
position: relative;
display: inline-block;
margin: 0 $pdn-lf;
color: #fff;
text-decoration: none;
text-transform: uppercase;
overflow: hidden;
letter-spacing: 2px;
border-radius: 40px;
background: linear-gradient(90deg, #755bea, #ff72c0);
animation-name: bubble-hover;
animation-duration: .5s;
animation-fill-mode: forwards;
animation-play-state: running;
animation-iteration-count: 1;
&:hover {
animation-name: bubble-hover;
animation-duration: .5s;
animation-fill-mode: forwards;
animation-play-state: running;
animation-iteration-count: 1;
}
@include md() {
font-size: 27px;
padding: 18px 54px;
}
@include lg() {
font-size: 18px;
padding: 12px 36px;
}
}
@keyframes bubble-hover {
0% {
background: #755bea;
}
100% {
background: #55e7fc;
}
}