Linux 进阶命令(二)转

Linux 高级用法

 管道

概念:| 管道链接符号 l
左边命令一定要有输出结果 | 右边命令一定要有输入
     | 的作用就是把左边命令的输出结果 给 右边命令当做输入
     | 右边命令一般常用有 more grep
形式:命令1 | 命令2
# 在当面用户主目录下输出 文件信息然后匹配文件首字母d
# ls -alh | grep '^d'
链接文件ln
# 链接 link、链接文件 symbol
概念:类似于windows系统中的快捷方式。给源文件创建一个链接link文件,用户通过链接文件间接使用/修改 源文件。

形式:ln -s (软链接)ln (硬链接)

注意事项:1.ln -s 软链接大小和源文件没有关系,不存数据存的是源文件的路径。如果源文件被删除了,那么软链接也失效了。
2. 在创建软链接的过程中 如果源文件和链接文件存放的位置在不同位置,需要给源文件增加绝对路径
3. ln 硬链接 如果源文件删除了 硬链接则可以继续使用。
4. 在创建硬链接的过程中 如果源文件和链接文件存放的位置在不同位置,可以通过相对路径进行创建
# 软链接创建过程
# lofoer当前用户的主目录 @ubuntu 操作系统 ~/Desktop 当前用户下的桌面文件
lofoer@ubuntu:~/Desktop$ rm infolink.txt 
lofoer@ubuntu:~/Desktop$ ln -s info.txt  infolinksymbol.txt
lofoer@ubuntu:~/Desktop$ cat infolinksymbol.txt
# 硬链接创建过程
lofoer@ubuntu:~/Desktop$ ln infolink.txt  ./../info.txt
lofoer@ubuntu:~/Desktop$ cd ..
lofoer@ubuntu:~$ ls
Desktop  Documents  Downloads  examples.desktop  info.txt  Music  Pictures  Public  Templates  Videos
lofoer@ubuntu:~$ cat info.txt  # 查看info内容
文本搜索 grep
grep 查找含有指定文本行的意思
作用:一个数据去一个文件中搜索
格式:grep 选项 数据 文件名
常用选项:
忽略大小写 -i
显示匹配行号 -n
条件取反 -v
#  显示cutDemo.txt 所有内容
 
grep用法.png
# 复习管道及grep用法 
cat cutDemo.txt 展示所有内容 
grep -ivn 'w' 白话翻译: -i 忽略大小写 -n 显示匹配的行号 -v 条件取反
grep -ivn 的意思是 展示没有大写w、小写w的内容项
 
grep -inv用法.png

匹配通配符 *、?

* 匹配任意个任意字符
? 匹配一个任意字符
总用量 1459924
drwxr-xr-x  24 root root       4096 8月  15 08:10 ./
drwxr-xr-x  24 root root       4096 8月  15 08:10 ../
drwxr-xr-x   2 root root       4096 8月  16 01:07 bin/
drwxr-xr-x   3 root root       4096 8月  15 08:02 boot/
drwxrwxr-x   2 root root       4096 8月  14 21:22 cdrom/
drwxr-xr-x  20 root root       4260 8月  15 08:02 dev/
drwxr-xr-x 127 root root      12288 8月  16 01:10 etc/
drwxr-xr-x   3 root root       4096 8月  16 00:06 home/
lrwxrwxrwx   1 root root         32 8月  15 08:02 initrd.img -> boot/initrd.img-5.0.0-25-generic
lrwxrwxrwx   1 root root         32 8月  14 21:19 initrd.img.old -> boot/initrd.img-5.0.0-23-generic
drwxr-xr-x  21 root root       4096 8月  14 21:25 lib/
drwxr-xr-x   2 root root       4096 8月   5 11:58 lib64/
drwx------   2 root root      16384 8月  15 05:19 lost+found/
drwxr-xr-x   3 root root       4096 8月   5 11:58 media/
drwxr-xr-x   2 root root       4096 8月   5 11:58 mnt/
drwxr-xr-x   2 root root       4096 8月  14 21:27 opt/
dr-xr-xr-x 326 root root          0 8月  14 21:50 proc/
drwx------   3 root root       4096 8月   5 12:09 root/
drwxr-xr-x  29 root root        980 8月  16 02:00 run/
drwxr-xr-x   2 root root      12288 8月  16 01:07 sbin/
drwxr-xr-x  11 root root       4096 8月  14 21:28 snap/
drwxr-xr-x   2 root root       4096 8月   5 11:58 srv/
-rw-------   1 root root 1494845440 8月  14 21:19 swapfile
dr-xr-xr-x  13 root root          0 8月  15 02:18 sys/
drwxrwxrwt  20 root root       4096 8月  16 02:05 tmp/
drwxr-xr-x  11 root root       4096 8月   5 12:03 usr/
drwxr-xr-x  14 root root       4096 8月   5 12:11 var/
lrwxrwxrwx   1 root root         29 8月  15 08:02 vmlinuz -> boot/vmlinuz-5.0.0-25-generic
lrwxrwxrwx   1 root root         29 8月  15 08:02 vmlinuz.old -> boot/vmlinuz-5.0.0-23-generic
显示 以/结尾的内容
grep '/$' infolink.txt
显示 以/结尾的内容,并且统计有多少条数据
grep '/$' infolink.txt | wc -l
文件查找 find

作用:find 能够根据文件的名称特征,会在路径及其所有子目录查找文件
形式:find 路径 -name '名字特征'

# 查找当前系统所有的hello.py 文件
find / -name 'hello.py' 

# 结合通配符使用 *任意个任意字符  ?一个任意字符
find / -name '*.py'
find / -name '?.py'

# 1.搜索系统下所有的py文件
# 2.获取其中含有home/python的数据
# 3.不要其中以/home/python/.开始的数据
sudo find / -name '*.py' | grep '^/home/python/'| grep -v '^/home/python/.'

选取命令 cut
压缩和解压(gz / bz2 / xz )
tar 命令压缩
格式: tar 选项 压缩文件名 [需要被压缩的文件名]
常用 -z gz 格式解/压缩 -C(大写) 创建归档文件 -v 显示详细过程 -f 指定归档文件名

gz格式
tar 压缩 a.txt b.txt c.txt 文件 压缩文件名 test.tar.gz

# tar zcvf test.tar.gz  a.txt b.txt c.txt

tar 解压 解压文件 test.tar.gz -C 解压到指定文件目录
tar zxvf test.tar.gz  -C ./

bz2格式
压缩:tar jcvf test.tar.gz  a.txt b.txt c.txt
解压:tar jxvf test.tar.gz  -C ./
bz2 格式 与 gz格式的区别
# .bz2和.gz的区别在于,前者比后者压缩率更高,后者比前者花费更少的时间
xz 格式
不支持 -C 指定文件夹解压缩,一般与gz格式相结合使用
xz z 要压缩的文件
xz d 要解压的文件
zip / unzip
压缩:zip test3.zip *.sql *.deb 将当前目录所有.sql 、.deb文件压缩到test3.zip文件中
解压:unzip test3.zip -d 解压路径

权限
用户基本操作
用户管理
用户组管理
--远程登录操作--
# 1. 服务器、客户电脑安装有 ssh服务
sudo apt-get install openssh-server

# 2. 获取服务器的IP地址 在服务器里面敲命令
ifconfig 得到一个非127.0.0.1的IP

# 3. 远程登录 在客户端命令行敲命令 ssh 用户名@服务器IP地址
ssh lofoer@192.168.162.76



作者:我叫小灿灿

原文地址:https://www.cnblogs.com/xiaolizikj/p/11377356.html