Linux03 /shell命令
Linux03 /shell命令
- Linux03 /shell命令
- 1. xshell快捷键
- 2. 修改linux的命令提示符,通过变量PS1控制
- 3. yum安装/卸载
- 4. cat命令
- 5. 重定向符号
- 6. 显示前几行、显示后几行
- 7. linux的查找命令
- 8. 查看进程的命令 ,管道符的使用
- 9. 过滤文本字符串的命令
- 10. 远程传输scp
- 11. 统计文件夹大小命令
- 12. linux的任务管理器 top命令
- 13. 更新系统时间
- 14. 在线下载资源的命令
- 15. 文本中内容替换
- 16. 文件特殊权限的命令
- 17. linux用户管理
- 18. 管理员权限 sudo命令
- 19. 文件权限
- 20. 打包、压缩
- 21. 杀死进程/通过进程id号
- 22. 定时任务
- 23. 配置yum源
- 24. 建立软连接
- 25. 手动启动网卡
- 25. 拓展:MySQL的客户端都有哪些
1. xshell快捷键
ctrl+d # 相当于logout,快速退出
ctrl + shift +r # 快速ssh登录
ctrl + l # 相当于clear
2. 修改linux的命令提示符,通过变量PS1控制
echo $变量名 # 打印出变量的值
# 输出PS1变量的值
echo $PS1
# 修改变量的值
PS1='[\u@\h \t \w]\$'
\u 当前登录用户
\h 当前主机名
\t 当前系统时间
\w 输出绝对路径
\W 输出工作路径的最后一位
3. yum安装/卸载
yum install vim -y # 安装vim软件,且自动输入yes
yum erase vim -y # 卸载vim软件,且自动输入yes
4. cat命令
cat -n filename 显示行号
示例1:
[root@localhost 19:43:37 /tmp] # cat -n test.py
1 #coding:utf-8
2 print('最近不太好!!!')
cat -E filename 每一行结尾加上$符
示例2:
[root@localhost 19:45:00 /tmp]#cat -E test.py
#coding:utf-8$
print('最近不太好!!!')$
5. 重定向符号
> 重定向覆盖输出符 w模式
>> 重定向追加输出符 a模式
< 重定向覆盖写入符
<< 重定向追加写入符
示例:
1.
[root@localhost 19:46:09 /tmp]#cat >> test01.txt << EOF
> 以后会怎样
> 可能会好吧
> EOF
[root@localhost 19:56:33 /tmp]#cat test01.txt
以后会怎样
可能会好吧
2.清空文件内容
echo "" > test01
6. 显示前几行、显示后几行
head -n 数字 filename # 看文件的前n行
tail -f filename # 持续刷新文件内容的变化
# 检测文件内容的变化
# 输出文件的10-20行
head -20 english.txt | tail -10
7. linux的查找命令
find 从哪找 -type 文件类型 -name 你要找什么名字的文件
文件类型
l 快捷方式类型
d 文件夹类型
f 文本类型
# 全局搜索,所有以.txt结尾的文件
find / -type f -name "*.txt"
# 在opt目录下搜索 我是张三.txt
find /opt -name '我是张三.txt'
# 在/opt下搜索和python有关的文件夹
find /opt -type d -name "python"
find /opt -type d -name "python*"
find /opt -type d -name "*python"
find /opt -type d -name "*python*"
8. 查看进程的命令 ,管道符的使用
ps aux 或者 ps -ef # 查看机器所有进程信息
ps aux | grep "vim" # 过滤出和vim有关的进程
ps aux | grep "python" # 找到机器所有和python有关的进程
9. 过滤文本字符串的命令
语法:
grep 你想要的字符串 filename
-i -- 不区分大小写
-v -- 反向查找
# 1.找出文件中所有大小写的root
grep -i 'root' filename # -i不区分大小写
# 2.找出文件的有用信息行
grep -v "^#" filename | grep -v "^$"
# 3.找出文件中以#开头的行
grep -v "^#" filename
# 4.找出文件中的空行
grep -v "^$" filename
10. 远程传输scp
语法
scp 你想要的内容 传输到哪里
# 1.把本地机器的/tmp/张三.txt发到远程机器的/opt目录下
scp /tmp/张三.txt root@远程机器的ip:/opt/
# 2.把本地服务器的first.py 发送给root@192.168.16.105远程机器
# 》如果远程服务器data文件夹存在,则放入data文件夹中
# 》如果远程服务器没有data这个文件夹,则把first.py改名为data
scp ./first.py root@192.168.16.105:/data
# 3.如果在data后加/的话,远程服务器没有data文件夹会报错
scp ./first.py root@192.168.16.105:/data/
# 错误信息:scp: /data/: Is a directory
# 4.把远程服务器的文件拿过来
scp root@192.168.16.105:/data/李四.txt /opt
# 5.发送所有的文件和文件夹给远程服务器
scp -r ./* root@192.168.16.105:/data/
11. 统计文件夹大小命令
1. ls -h
2. du命令 以du命令为准
-h 显示mb gb单位
-s 显示统计
# 示例:统计/var/log文件夹大小
du -sh /var/log/
12. linux的任务管理器 top命令
top 命令用于动态地监视进程活动与系统负载等信息
13. 更新系统时间
yum install ntpdate -y
ntpdate -u ntp.aliyun.com # -u更新时间,和阿里提供的时间服务器,进行时间同步
# 查看系统时间
date命令
14. 在线下载资源的命令
wget -r -p www.lbzhk.com # -r -p 递归爬取网站资源
15. 文本中内容替换
用法:
# sed处理字符的命令
# 语法,s是替换模式,g是全局替换
sed "s/你想替换的内容/替换之后的内容/g"
示例:
# 把passwd文件中所有的root替换为大写的ROOT, -i参数是将替换结果写入到文件
sed -i "s/root/ROOT/g" passwd
16. 文件特殊权限的命令
# 1.查看文件的特殊权限
lsattr
# 2.设置文件的特殊权限
chattr
# 示例:给settings.py加锁,禁止删除
chattr +i settings.py
17. linux用户管理
1、创建普通用户
useradd 用户名 # 创建用户的同时,会创建用户组
passwd 用户名 # 更改用户密码
2、用户间切换的命令
su - 用户名 # 中间这个横杠代表 用户环境变量完全切换
# root切换普通不要密码
# 普通用户间切换需要密码
3、查看linux用户的id信息
id 用户名
4、查看存放用户信息的文件
/etc/passwd
# 经过root创建的普通用户 id从 1000开始
# 系统自带的用户,如 mysql ,bin,nginx等用户,默认是1~999
5、删除用户
userdel -rf 用户名
18. 管理员权限 sudo命令
配置sudo命令的方式
1.用visudo命令,打开配置文件,添加如下配置
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
gg ALL=(ALL) ALL
2.此时可以使用sudo命令了
sudo 你想敲的命令
19. 文件权限
1、文件权限各部分释义
文件的类型
- 代表普通文件
d 代表文件夹
l 代表软连接快捷方式
文件的权限分三类人
user 属主
group 属组
other 其他人
文件的读写执行是:
顺序必须是 读写执行
r read 读 4
w write 写 2
x exec 可执行 1
- 没有权限
ls -l # 可以查看查看文件权限
2、修改文件权限
chmod (chang mode)
# 1.修改文件的权限
chmod u+x filename # 给文件的user用户,添加x可执行权限
chmod o-r filename.txt # 给其他人去掉r的读取权限
chmod 700 filename.py # 也可以通过数字去修改文件的权限
# 2.修改文件的属主
chown zhangsan filename.txt # 修改文件的主人是 zhangsan
# 3.修改文件的属组
chgrp zhangsan filename.txt # 修改文件的属组为zhangsan组
# 4.将用户加入某个组中
usermod -G
示例:
# 1.已知test.py文件权限是rwxr--r--,修改权限为rw-rw-rw
chmod 666 test.py
# 2.修改test.py文件权限为700
chmod 700 test.py
# 3.修改test.py属组是lisi
chgrp lisi test.py
# 4.linux文件权限的755,700是什么意思
755:
属主:读、写、执行权限
属组:读、执行权限
其他人:读、执行权限
700:
属主:读、写、执行权限
属组:没有权限
其他人:没有权限
20. 打包、压缩
打包命令:tar
参数 :
-z 调用gzip压缩
-x 解包
-c 打包
-v 显示过程
-f 必须写参数结尾,指定tar包的名字
示例
1.把/tmp下所有内容打包成 alltmp.tar 文件
tar -cvf alltmp.tar ./*
2.打包且压缩的命令,能够节省60%-70%磁盘空间
tar -zcvf alltmp.tar.gz ./*
3.解压缩命令
tar -zxvf ../alltmp.tar.gz ./
21. 杀死进程/通过进程id号
# 1.检查pid
ps aux | grep nginx
# 2.杀死进程id
kill id号
22. 定时任务
# 1.检查定时任务列表
crontab -l
# 2.设置定时任务
crontab -e
# 语法 ,每分钟向一个文件中,追加一个信息
定时任务规则、示例:
分 时 日 月 周 执行命令的绝对路径
* * * * * /usr/bin/echo "定时任务" >> /tmp/文件夹.txt
# 1.每分钟执行一次命令
* * * * * 命令的绝对路径
# 2.每小时的3,15分组执行命令
* * * * * 命令的绝对路径
3,15 * * * *
# 3.在下午8-11点的第3和第15分钟执行
* * * * * 命令的绝对路径
3,15 20-23 * * *
# 4.每晚21:30执行命令
* * * * * 命令的绝对路径
30 21 * * *
# 5.每晚的12点执行命令
* * * * * 命令的绝对路径
0 0 * * *
# 6.每周六、日的1:30执行命令
* * * * * 命令的绝对路径
30 1 * * 6,0
# 7.每周一到周五的凌晨1点,清空/tmp目录的所有文件
* * * * * 命令的绝对路径
0 1 * * 1-5 /usr/bin/rm -rf /tmp/*
# 8.每晚的21:30重启nginx
* * * * * 命令的绝对路径
30 21 * * * /usr/bin/systemctl restart nginx
# 9.每月的1,10,22日的下午4:45重启nginx
* * * * * 命令的绝对路径
45 16 1,10,22 * * /usr/bin/systemctl restart nginx
# 10.每个星期一的上午8点到11点的第3和15分钟执行命令
* * * * * 命令的绝对路径
3,15 8-11 * * 1
23. 配置yum源
centos的默认yum仓库路径是 /etc/yum.repos.d ,在这目录下,第一层文件夹中的repo文件会识别为仓库文件
1.获取阿里云的yum源
打开网址https://opsx.alibaba.com/mirror
2.找到第一个仓库
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3.下载第二个仓库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
4.生成yum缓存,加速以后下载
yum makecache
24. 建立软连接
ln -s 源文件绝对路径 快捷方式绝对路径
25. 手动启动网卡
[root@linux ~]# ifup {interface}
[root@linux ~]# ifdown {interface}
[root@linux ~]# ifup eth0
25. 拓展:MySQL的客户端都有哪些
1.通过cmd,使用mysql -uroot -p 这个mysql就是客户端命令
2.pymysql python操作mysql的模块,客户端
3.django 提供的数据库连接驱动,pymysql,orm,mysqlclient
4.navicat window的可视化客户端
5.pycharm提供的数据库连接工具
Linux03 /shell命令的更多相关文章
- Hadoop Shell命令大全
hadoop支持命令行操作HDFS文件系统,并且支持shell-like命令与HDFS文件系统交互,对于大多数程序猿/媛来说,shell-like命令行操作都是比较熟悉的,其实这也是Hadoop的极大 ...
- Shell命令和流程控制
Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...
- 在程序中执行shell命令
在linux系统下的操作中我们会经常用到shell命令来进行,一开始学习进程的时候对于shell命令也进行了思考,认为shell命令就是一个进程的外壳,经过了后来的学习对于这一点也有了更多的认识. 用 ...
- Linux远程执行Shell命令或脚本
## 远程执行shell命令 ssh [user]@[server] '[command]' # eg. ssh root@192.168.1.1 'uptime' ## 远程执行本地shell脚本 ...
- HBase基本shell命令
HBase基本shell命令 以下shell命令都是经过测试,正常展示,若有不足,还望指点! 1.创建表 create ‘表名称’,‘列族名称1’,‘列族名称1’create 'test_M_01', ...
- Linux SHELL 命令入门题目答案(一)
1.如何使用shell 打印 “Hello World!” (1)如果你希望打印 !,那就不要将其放入双引号中,或者你可以通过转义字符转义(2)echo 'hello world!' 使用单引号ech ...
- Linux SHELL 命令入门题目(一)
新年新气象,注重知识积累,提高手敲代码能力,而不是眼高手低,只会复制黏贴. 1.使用shell 打印 “Hello World!” 2.求变量'hello world'的字符长度 3.$0 .$SHE ...
- shell命令获取最新文件的名称
最近有一个需求,在部署游戏战场服时,从程序包到部署需要做一些本地化的操作,手工操作费时费力,故写一个shell脚本,一键部署. 遇到的问题是每次要部署最新的程序包,因此需要shell命令获取最新的文件 ...
- 【转】Hadoop FS Shell命令
FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args> 的形式. 所有的的FS shell命令使用URI路径作为参数.URI格式是scheme ...
随机推荐
- @topcoder - 2013TCO3A D1L3@ TrickyInequality
目录 @description@ @accepted code@ @accepted code@ @details@ @description@ 现有不等式组: \[\begin{cases} x_1 ...
- 分享一个我自己做的 Excel 万年历
下载链接在此. 纯 Excel 公式实现,带农历,可自定义节日.配色. 带有紧凑日历和记事日历两种日历,均可直接 Ctrl+P 打印,且打印时不带有顶部的控制栏.
- [每日一题2020.06.10]Codeforces Round #644 (Div. 3) ABCDEFG
花了5个多少小时总算把div3打通一次( 题目链接 problem A 题意 : 两个x*y的矩形不能重叠摆放, 要放进一个正方形正方形边长最小为多少 先求n = min(2x, 2y, x+y) 再 ...
- qt解决release后数据库连接不上的问题
问题 : 明明已经设置了 "./xxx" , 为什么release之后数据库还是连不上呢 解决 : 项目中建立一个plugins文件夹 将qt安装目录下的sqldrivers复制到 ...
- Andrew Ng - 深度学习工程师 - Part 2. 改善深层神经网络:超参数调试、正则化以及优化(Week 2. 优化算法)
===========第2周 优化算法================ ===2.1 Mini-batch 梯度下降=== epoch: 完整地遍历了一遍整个训练集 ===2.2 理解Mini-bat ...
- 手把手教你基于SqlSugar4编写一个可视化代码生成器(生成实体,以SqlServer为例,文末附源码)
在开发过程中免不了创建实体类,字段少的表可以手动编写,但是字段多还用手动创建的话不免有些浪费时间,假如一张表有100多个字段,手写有些不现实. 这时我们会借助一些工具,如:动软代码生成器.各种ORM框 ...
- SpringMVC拦截器使用
源码地址 拦截器interceptor 拦截器是URL请求的第一道门,所有请求会先经过拦截器interceptor,然后再进入controller: 下面,记录一种通过注解方法拦截所有需要登录才能发起 ...
- PHP利用FTP上传文件连接超时之开启被动模式解决方法
初始代码: <?php $conn = ftp_connect("localhost") or die("Could not connect"); ftp ...
- 6、struct2使用servlet的api函数
方法一: Struts2的Action访问Servlet API 可以通过实现装配接口没,完成对Servlet API的访问 * ServletRequestAware取得HttpServletReq ...
- 使用 Masstransit中的 Request/Response 与 Courier 功能实现最终一致性
简介 目前的.net 生态中,最终一致性组件的选择一直是一个问题.本地事务表(cap)需要在每个服务的数据库中插入消息表,而且做不了此类事务 比如:创建订单需要 余额满足+库存满足,库存和余额处于两个 ...