Linux 高级命令

目录

 

1.Linux 进阶操作

1.1 输出重定向⭐⭐⭐

1.2 管道⭐⭐⭐

1.3 链接⭐⭐⭐

1.4 文本搜索grep⭐⭐⭐

1.5 查找文件find ⭐⭐⭐

1.6 压缩和解压缩⭐⭐⭐

1.7 文件权限⭐⭐

1.8 用户基本操作⭐⭐

1.9 用户管理⭐⭐

1.10 用户组管理⭐

1.11 远程登录⭐⭐⭐

1.12 远程拷贝⭐⭐


1.Linux 进阶操作

1.1 输出重定向⭐⭐⭐

概念: 把原本要输出到终端的结果 转而输出到文件中<输出重定向>

用法: 命令 符号 文件名字

符号种类:

> 覆盖输出重定向 类似文件打开方式的"w"模式

>> 追加输出重定向 类似文件打开方式的"a"模式

ls -l > a.txt 
ls -alh > a.txt   # 第二次命令结果会覆盖文件原有内容 
 
 ls -alh /bin >> a.txt  # 本次命令结果会追加原有文件内容后面

1.2 管道⭐⭐⭐

 

概念:把左边命令的输出结果 给 右边的命令当做输入来用。

形式:命令 | 命令

用法:

 # cat a.txt | more   # more a.txt
 ls -alh /bin | more
​
​
 显示当前目录下所有文件详细信息         搜索以-开始的行          统计行数
ls -al | grep "^-" | wc -l

|右侧一般是 more grep awk

 

1.3 链接⭐⭐⭐

作用: 通过链接文件间接访问、修改源文件 方便快捷 link

分类:

软 ln -s 源文件 链接文件 <symbols 符号链接>

硬 ln 源文件 链接文件

用法:

ln -s 1.txt 1s.txt
gedit 1s.txt 
python@ubuntu:~/Desktop/Linux$ cat 1.txt 
hehehehehheHEIHEI
​
# 通过软链接可以间接访问 、修改源文件数据
# 如果源文件删除了   软连接不可用   硬链接不受影响
ln 1.txt 1h.txt  # 可以通过1h.txt 间接访问和修改源文件
​
# 硬链接本质
# 硬链接其实是一个文件数据的别名  硬链接数就是一个文件数据的名字的数量
rm 文件 # 只是删除文件数据的一个别名 而数据只有在没有名字的情况下才会删除

工作建议: 创建 跨目录的链接文件 建议都写成 绝对路径方式

工作中软链接常用 软链接可以指向一个目录 硬链接 不可以

 

 

1.4 文本搜索grep⭐⭐⭐

作用: 根据文本数据去文件中搜索

格式: grep 选项 "文本数据" 文件名

选项:

-i 忽略大小写

-n 显示行号

-v 反选条件

用法:

python@ubuntu:~/Desktop/Linux$ grep "itcast.cn" grep.txt
www.itcast.cn
itcast.cn
python@ubuntu:~/Desktop/Linux$ grep -i "itcast.cn" grep.txt
www.itcast.cn
WWW.ITCAST.CN
itcast.cn
ITCAST.CN
python@ubuntu:~/Desktop/Linux$ grep -ni "itcast.cn" grep.txt
1:www.itcast.cn
2:WWW.ITCAST.CN
6:itcast.cn
7:ITCAST.CN
python@ubuntu:~/Desktop/Linux$ grep -niv "itcast.cn" grep.txt
3:ia
4:ib
5:a.com.cn
11:itheima.com
12:www.itheima.com
​
# 管道可以结合 grep 对前面命令的输出结果进行筛选
python@ubuntu:~/Desktop/Linux$ ls | grep "txt" 
12.txt
1h.txt
1s.txt
2.txt
3.txt
4.txt
a.txt
grep.txt
#  grep结合正则使用 
# 查询文件中 以itcast.cn的开始行并且显示行号 忽略大小写
python@ubuntu:~/Desktop/Linux$ grep -ni "^itcast.cn" grep.txt
# 查询文件中 以cn的结束的行并且显示行号 忽略大小写
python@ubuntu:~/Desktop/Linux$ grep -ni "cn$" grep.txt
# 查询文件中 i字母后为任意非换行字符的 数据
python@ubuntu:~/Desktop/Linux$ grep -ni "i." grep.txt

 

1.5 查找文件find ⭐⭐⭐

作用: 根据文件特征(名字)查找文件

形式: find 路径 选项 参数

会在路径参数对应的路径及其所有的子目录当中去查找

用法:

find . -name ".py"  # 在当前下查找名字叫.py的所有文件
find / -name ".py"  # 在/下查找名字叫.py的所有
​
sudo find / -name ".py"  # sudo 命令....  以系统管理员权限运行后面命令 输入 python 用户密码
​
# 大多数情况下可能并不知道文件的完整名字  此时可以使用通配符(非正则)
*   任意(0)个任意字符     a*    *.txt
?   一个任意字符      a?     ?.txt
python@ubuntu:~/Desktop/Linux$ find . -name "?.txt"
python@ubuntu:~/Desktop/Linux$ find . -name "*.txt"

通配符在 Linux 命令中可以和很多命令合用

ls cd cp mv

python@ubuntu:~/Desktop/Linux$ ls 1?.txt 12.txt 1h.txt

python@ubuntu:~/Desktop/Linux$ ls 1*.txt 12.txt 1h.txt 1.txt

1.6 压缩和解压缩⭐⭐⭐

2.6.1 gz和bzip2文件操作⭐⭐⭐

格式: tar 选项 压缩包名字 […..]

常用选项:

-c create打包

-v 显示详细过程

-f 指定压缩包名字 紧跟压缩包名字

-x 解包

-z gzip算法格式

-j bzip2算法格式

-C 解压到指定路径 紧跟目的路径

-f 选项之后必须立马跟上 压缩包的名字

# 将当前目录下所有文件和目录 打包压缩成 1.tar.gz
tar -zcvf 1.tar.gz *
# # 将当前目录下所有文件和目录 打包压缩成 1.tar.bz2
tar -jcvf 1.tar.bz2 *
​
# 解压缩gz 文件
tar -zxvf  1.tar.gz
# bz2 文件
tar -jxvf 1.tar.bz2 
​
# -C 解压到指定路径
tar -jxvf 1.tar.bz2 -C ~/Desktop/

2.6.2 zip 文件操作⭐⭐

# 压缩当前目录下所有的txt 文件成 my.zip
zip my.zip *.txt   
# 解压当前目录下 my.zip
unzip my.zip
# 解压当前目录下 my.zip 到 桌面
unzip my.zip -d ~/Desktop/

unzip my.zip

unzip my.zip -d ~/Desktop/

1.7 文件权限⭐⭐

每个文本所拥有的的 读read r 写 write w 执行 eXecute x的权利。

python@ubuntu:~/Desktop/Linux/Test$ ll
drwxrwxr-x 4 python python 4096 7月  20 11:47 ./
drwxrwxr-x 9 python python 4096 7月  20 11:26 ../
-rw-rw-r-- 1 python python    0 7月  20 11:25 12.txt
-rw-rw-r-- 1 python python   18 7月  20 11:25 1h.txt
-rw-rw-r-- 1 python python   13 7月  20 11:25 2.txt
-rw-rw-r-- 1 python python  714 7月  20 11:25 3.txt
​
python1 用户   python2 用户  python 组
python3 用户   itheima 组
​
rw-        rw-         r-- 分为三组   每一组有三个权限分别是读 写 执行
-表示占位 无权限
文件所属用户 同组用户权限  其他(非所属用户 非同组用户)
user  u    group  g    other o                    所有 all a
​
# 修改文件的权限
# 1   字母法 方式1 小白都会使用
chmod augo+-=rwx   文件名
chmod u+x 2.txt
#chmod u + x 2.txt
​
# 2 数字法 方式 2 高手都用这种
r    4
w    2
x    1
# 用一个数字来表示一组权限 如果需要设置一个权限 需要将这个权限对应的值加到这个数字中
# 0表示该组没有任何权限
​
chmod 755 2.txt   # rwx r-x r-x
chmod 644 2.txt   # rw-r--r--
chmod 640 2.txt   # rw-r-----

 

sudo

1.8 用户基本操作⭐⭐

root 用户 超级系统管理员 拥有系统最高权限

# sudo  命令  可以让一个命令以 系统管理员root权限运行<安装卸载软件>
sudo mkdir haha
​
# sudo -s 切换到 root 用户使用
exit   退出登录用户;退出终端
​
whoami 查看当前用户的名字
​
passwd 用户名  修改指定用户的密码 一般需要输入这个用户原密码
        root 用户修改所有普通用户都不用知道原密码
​
which 指令  这个指令程序所在的路径
reboot 重启
shutdown -r 20:25 定时重启
shutdown -r now 关机后重启
shutdown -r +10 10分钟后重启

 

1.9 用户管理⭐⭐

用户管理和用户组管理 都需要 root 权限 即 sudo 命令

# 创建用户    创建用户时如果不指定用户组 会自动创建一个同名组
python@ubuntu:~$ useradd laowang -m 
python@ubuntu:~$ useradd laowang -m -g python
​
#验证用户   
python@ubuntu:~$ cat /etc/passwd
python@ubuntu:~$ id laowang      # 发现laowang 用户已经创建成功
# 验证组信息  
python@ubuntu:~$ cat /etc/group # 发现新增了 laowang 组
​
# 设置用户密码   sudo passwd laowang   
​
# 切换到新用户需要先设置这个用户的密码
#切换用户 
python@ubuntu:~$ su laowang  # 需要输入 laowang 的密码  不切换当前路径
python@ubuntu:~$ su - laowang #输入laowang 的密码  当前路径切换为用户主目录
​
# exit 退出登录的用户
​
# 如果需要一个用户使用 sudo  需要这个添加 sudo 这个附加组 
# 修改用户所在普通组 和 附加组  usermod 用户名 -g 普通组 -G 附加组
​
# 以 root 权限运行( 设置老王的附加组为 sudo)  
python@ubuntu:~$ sudo usermod laowang -G sudo
# 以 root 权限运行( 设置老王的附加组为 sudo) 并且设置老王的组为 python
python@ubuntu:~$ sudo usermod laowang -G sudo -g python

 

 

操作附加组

 

useradd laowang -m

删除用户

userdel 删除用户时 -r 能够删除用户主目录

在删除用户时 用户必须不能被占用(需要把占用的用户 使用 exit 退出 )

用户组 -g 家庭

附加组 -G 组织

1.10 用户组管理⭐

创建用户组 sudo groupadd heihei

修改用户组 sudo usermod -g 普通组 用户名

删除用户组 sudo groupdel heihei

查看用户组 cat /etc/group

 

1.11 远程登录⭐⭐⭐

目的: 通过连接互联网可以登录远程某台主机 操作

形式: 客户端电脑上安装 ssh 软件 在服务器上安装 ssh 服务

步骤:

1 在服务器上安装 sudo apt-get install openssh-server<虚拟机自带>

2 在客户端需要安装 ssh 工具

windows 双击 exe 一直下一步 直到完成

运行-cmd-ssh 显示参数说明安装完成

3 在服务器中获取服务器 IP

在服务器端打开命令行窗口 ifconfig 形如 192.168.xxx.xxx

4 在客户端中登录服务器 黑窗口中输入 ssh 用户名@服务器ip地址

ssh python@192.168.134.100

 

1.12 远程拷贝⭐⭐

scp和 ssh工具全家桶

下载(服务器到客户端)

本地拷贝文件: cp 源文本 目标路径

远程拷贝文件: scp 源文本 目标路径

 

上传(客户端到服务器)

scp -r 本机地址路径 远程主机路径(远程服务器用户名@远程服务器ip地址:绝对路径)

 scp -r 01html.html python@192.168.134.100:/home/python/Desktop/

 

下载(服务器到客户端)

scp -r 远程主机路径 本机地址路径

 scp -r python@192.168.134.100:/home/python/Desktop/老师你真帅.txt .

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值