一、文件管理之:联网下载文件(wget、curl)、文件上传与下载(rz、sz)
1、wget
1).安装weget命令
[root@oldboyedu ~]# yum install wget -y
2).粘贴复制下载的资源
复制资源的链接地址---->
3).使用wget命令进行下载
[root@oldboyedu ~]# wget http://fj.xuliangwei.com/public/weixin.py
4).使用cat less more 命令查看该文件
[root@oldboyedu ~]# cat weixin.py
5).使用wget下载资源时,指定保存的位置,并重新命名
[root@oldboyedu ~]# wget -O /opt/tt.png http://fj.xuliangwei.com/public/ks.jpeg
6).下载资源时,如果不想重新命名只想修改保存的路径,请带上原有的名称
[root@oldboyedu ~]# wget -O /opt/ks.jpeg http://fj.xuliangwei.com/public/ks.jpeg
选项: -O: 指定下载地址
[root@oldboyedu ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
选项: -o: 指定下载地址
[root@oldboyedu ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2、curl 浏览网络上的资源
1).浏览网站源代码
[root@oldboyedu ~]# curl http://fj.xuliangwei.com/public/weixin.py
2).使用curl将内容保存至本地,并重命名
[root@oldboyedu ~]# curl -o wei.txt http://fj.xuliangwei.com/public/weixin.py
3).将资源保存至指定的路径
[root@oldboyedu ~]# curl -o /opt/weixin.py http://fj.xuliangwei.com/public/weixin.py
3、rz sz
如果无法将文件直接拖拽进Linux服务器
1.要么没有安装lrzsz ,建议安装 yum install lrzsz -y
2.无法上传空文件
rz 只能上传文件,不支持上传文件夹,不支持大于4个G上传,也不支持断点续传
sz /path/file 只能下载文件 (任意单个文件),不支持下载文件夹
yum install lrzsz -y 不安装软件则无法执行该命令
二、文件管理之:文件或命令查找(which、whereis)
1.查找一个命令的绝对路径
当我们想执行一个命令的绝对路径时,先使用which command 查询绝对路径
which ls #查找ls命令的绝对路径
2.whereis也使用来查询命令的绝对路径
whereis ls //查找命令的路径、帮助手册、等
whereis -b ls //仅显示命令所在的路径
3.对于内核相关的一些命令,使用which whereis是无法查询到,需要使用type命令查询
type -a ls #查看命令的绝对路径(包括别名)
对于后面要使用一个命令的绝对时
which ls #查找ls命令的绝对路径
whereis ls //查找命令的路径、帮助手册、等
whereis -b ls //仅显示命令所在的路径
type -a ls #查看命令的绝对路径(包括别名)
三、文件管理之:字符处理命令(sort、uniq、cut、sed、awk、wc、)
1、sort
有些情况下,需要对应一个无序的文本文件进行数据的排序,这时就需要使用sort进行排序了
sort [OPTION]... [FILE]...
-r:倒序
-n:按数字排序
-t:指定分隔符(默认空格)
-k:指定第几列, 指定几列几字符(指定1,1 3.1,3.3)
[root@oldboyedu ~]# sort file.txt #使用sort下面对输出的内容进行排序
[root@oldboyedu ~]# sort -t ":" -k2 sort.txt #使用-t指定分隔符, 使用-k指定需要排序的列。
[root@oldboyedu ~]# sort -t ":" -n -k2 p.txt #按照数字的方式进行排序, 需要使用 -n参数。
2、uniq去重
如果文件中有多行完全相同的内容,当前是希望能删除重复的行,同时还可以统计出完全相同的行出现的总次数, 那么就可以使用uniq命令解决这个问题(但是必须配合sort使用)。
uniq [OPTION]... [INPUT [OUTPUT]]
#选项:-c 计算重复的行
[root@oldboyedu ~]# cat file.txt |sort|uniq -c
3、cut截取字段
cut OPTION... [FILE]...
#选项:
-d 指定分隔符
-f 数字,取第几列
–f3,6三列和6列
-c 按字符取(空格也算)
cat >> file.txt << EOF
Im xlw, is QQ 552408925
EOF
#方法一
[root@oldboyedu ~]# cut -d " " -f2,5 file.txt #过滤出文件里 xlw以及552408925
#方法二
[root@oldboyedu ~]# cut -d " " -f2,5 file.txt |sed 's#,##g'
4、wc
wc [OPTION]... [FILE]...
#选项:-l显示文件行数 -c显示文件字节 -w显示文件单词
[root@oldboyedu ~]# wc -l /etc/fstab #统计/etc/fstab文件有多少行
[root@oldboyedu ~]# wc -l /etc/services #统计/etc/services 文件行号
5、awk
取值,取列
选项:
-F 指定分隔符
cat >> file.txt << EOF
Im xlw, is QQ 552408925
EOF
#方法一
[root@oldboyedu ~]# awk '{print $2,$5}' file.txt |awk -F ',' '{print $1,$2}' #过滤出文件里 xlw以及552408925
#方法二
[root@oldboyedu ~]# awk -F "[, ]" '{print $2,$6}' file.txt
#方法三
[root@oldboyedu ~]# awk -F '[, ]+' '{print $2,$5}' file.txt
6、sed
替换
格式:
sed 's#旧#新#g' 或 sed 's@旧@新@g' 或 sed 's/旧/新/g' (不常用)
cat >> file.txt << EOF
Im xlw, is QQ 552408925
EOF
[root@oldboyedu ~]# sed 's#,# #g' file.txt | awk -F "," '{print $2 " " $5}' #过滤出文件里 xlw以及552408925
网友评论