day5文件管理

wget

1.安装

centos最小化安装默认没有wget,需要后期安装
[root@oldboy ~]# yum install wget -y
2.找到我们需要下载的资源 复制资源的链接地址-
3.在linux上使用wget命令进行下载(默认下载到当前目录)
[root@oldboy ~]# wget
http://fj.xuliangwei.com/public/weixin.py
使用cat less  more  查看该 文件 
[root@oldboy ~]# cat weixin.py
5.使用wget下载资源时,指定保存的位置,并重新命名 
[root@oldboy ~]# wget -O /opt/tt.png http://fj.xuliangwei.com/public/ks.jpeg
6.下载资源时,如果不想重新命名只想修改保存的路径,带上原有的名称
[root@oldboy ~]# wget -O /opt/ks.jpeg http://fj.xuliangwei.com/public/ks.jpeg

curl

curl 浏览网络上的资源
1.在线浏览网站资源内容(源代码) [root@oldboy ~]# curl http://fj.xuliangwei.com/public/weixin.py
2.使用curl将内容保存至本地,并重命名(如果没有明确指定路径,则表示 当前目录) 
[root@oldboy ~]# curl -o wei.txt http://fj.xuliangwei.com/public/weixin.py
3.将资源保存至指定的路径 
[root@oldboy ~]# curl -o /opt/weixin.py http://fj.xuliangwei.com/public/weixin.py

which whereis type

1.查找一个命令的绝对路径 
当我们想执行一个命令的绝对路径时,先使用which command  查询绝 对路径 
#which ls           //查找ls命令的绝对路径
2.whereis也使用来查询命令的绝对路径 
# whereis ls       //查找命令的路径、帮助手册、等 
# whereis -b ls    //仅显示命令所在的路径
3.对于内核相关的一些命令,使用which whereis是无法查询到,需要使 用type命令查询 
# type -a ls        //查看命令的绝对路径(包括别名)

sort

sort   [OPTION]    [FILE]
-r:倒序  
-n:按数字排序 
-t:指定分隔符(默认空格) 
-k:指定第几 列, 指定几列几字符

1.首先创建一个文件,写入一写无序的内容

1.[root@oldboy ~]# cat >> file.txt <<EOF
> c:2
> a:4 
> e:5 
> d:1 
> f:11 
> EOF

2.使用sort下面对输出的内容进行排序

[root@oldboy ~]# sort file.txt 
a:4 
c:2
d:1 
e:5 
f:11 
#结果并不是按照数字排序,而是按字母排序。 

按照排序的方式, 只会看到第一个字符,11的第一个字符是1, 按照字符 来排序确实比2小。 

使用-t指定分隔符, 使用-k指定需要排序的列。 按照数字的方式进行排序, 需要使用 -n参数

[root@oldboy ~]# sort -t ":" -k2  -n  file.txt 
d:1 
c:2
a:4 
e:5 
f:11

uniq去重

如果文件中有多行完全相同的内容,希望能删除重复的行,同 时还可以统计出完全相同的行出现的总次数,
那么就可以使用uniq命令解决这个问题(但是必须配合sort使用)。

选项:-c 计算重复的行

1.创建一个file.txt文件

[root@oldboy ~]# cat >>file1.txt <<EOF
> abc
> 123
> abc
> 123
> EOF

2.uniq需要和sort一起使用, 先使用sort排序, 让重复内容连续在一 起

[root@oldboy ~]# sort file1.txt 
123
123
abc
abc

3.使用uniq去除相邻重复的行

[root@oldboy ~]# sort file1.txt |uniq 
123
abc

4.-c参数能统计出文件中每行内容重复的次

[root@oldboy ~]# sort file1.txt |uniq -c
      2 123
      2 abc

cut截取字段

选项:

-d 指定分隔符 
-f 数字,取第几列 –f3,6三列和6列 -c 按字符 取(空格也算)
[root@oldboy ~]# cat >>file2.txt <<EOF 
> Im whl, is QQ 1359013011
>EOF

筛选出文件里 whl以及1359013011

[root@oldboy ~]# awk '{print $2,$5}' file2.txt |awk -F  "," '{print $1,$2}'
whl  1359013011
[root@oldboy ~]# cut -d " " -f  2,5 file2.txt |awk -F  "," '{print $1,$2}'
whl  1359013011
[root@oldboy ~]# cut -d " " -f  2,5 file2.txt |sed 's#,##g' 
whl 1359013011
[root@oldboy ~]# sed 's#,##g' file2.txt | awk '{print $2,$5}'
whl 1359013011

```wc统计行号

选项:

-l显示文件行数

[root@oldboy ~]# wc -l /etc/fstab #统计/etc/fstab文件有多少行
[root@oldboy ~]# wc -l /etc/services #统计/etc/services 文件行号

```扩展统计文件行号的方法``` 

[root@oldboy ~]# cat -n /etc/services | tail -1
[root@oldboy ~]# grep -n ".*" /etc/services | tail -1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容