Linux03 /shell命令

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命令的更多相关文章

  1. Hadoop Shell命令大全

    hadoop支持命令行操作HDFS文件系统,并且支持shell-like命令与HDFS文件系统交互,对于大多数程序猿/媛来说,shell-like命令行操作都是比较熟悉的,其实这也是Hadoop的极大 ...

  2. Shell命令和流程控制

    Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...

  3. 在程序中执行shell命令

    在linux系统下的操作中我们会经常用到shell命令来进行,一开始学习进程的时候对于shell命令也进行了思考,认为shell命令就是一个进程的外壳,经过了后来的学习对于这一点也有了更多的认识. 用 ...

  4. Linux远程执行Shell命令或脚本

    ## 远程执行shell命令 ssh [user]@[server] '[command]' # eg. ssh root@192.168.1.1 'uptime' ## 远程执行本地shell脚本 ...

  5. HBase基本shell命令

    HBase基本shell命令 以下shell命令都是经过测试,正常展示,若有不足,还望指点! 1.创建表 create ‘表名称’,‘列族名称1’,‘列族名称1’create 'test_M_01', ...

  6. Linux SHELL 命令入门题目答案(一)

    1.如何使用shell 打印 “Hello World!” (1)如果你希望打印 !,那就不要将其放入双引号中,或者你可以通过转义字符转义(2)echo 'hello world!' 使用单引号ech ...

  7. Linux SHELL 命令入门题目(一)

    新年新气象,注重知识积累,提高手敲代码能力,而不是眼高手低,只会复制黏贴. 1.使用shell 打印 “Hello World!” 2.求变量'hello world'的字符长度 3.$0 .$SHE ...

  8. shell命令获取最新文件的名称

    最近有一个需求,在部署游戏战场服时,从程序包到部署需要做一些本地化的操作,手工操作费时费力,故写一个shell脚本,一键部署. 遇到的问题是每次要部署最新的程序包,因此需要shell命令获取最新的文件 ...

  9. 【转】Hadoop FS Shell命令

    FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args> 的形式. 所有的的FS shell命令使用URI路径作为参数.URI格式是scheme ...

随机推荐

  1. TensorFlow从0到1之TensorFlow实现单层感知机(20)

    简单感知机是一个单层神经网络.它使用阈值激活函数,正如 Marvin Minsky 在论文中所证明的,它只能解决线性可分的问题.虽然这限制了单层感知机只能应用于线性可分问题,但它具有学习能力已经很好了 ...

  2. (四)log4j同配置下多个进程写日志

    原文链接:https://blog.csdn.net/voiceofwind/article/details/51966361 由于起了两个不同的任务,log4j中用的是一套配置,写入的是同一个路径, ...

  3. numpy矩阵相加时需注意的一个点

    今天在进行numpy矩阵相加的时候出现了一个小的奇怪的地方,下面我们来看看: >>>P = np.array([1,2,3,4]) >>>F = np.array( ...

  4. Dubbo——服务发布原理

    引言 在使用Dubbo的时候你一定会好奇它是怎么实现RPC的,而要了解它的调用过程,必然需要先了解其服务发布/订阅的过程,本篇将详细讨论Dubbo的发布过程. 源码分析 发布服务 新学Dubbo大都会 ...

  5. 使用DragonFly进行智能镜像分发

    Dragonfly 是一款基于 P2P 的智能镜像和文件分发工具.它旨在提高文件传输的效率和速率,最大限度地利用网络带宽,尤其是在分发大量数据时,例如应用分发.缓存分发.日志分发和镜像分发. 在阿里巴 ...

  6. 微信小程序入门基础

    微信小程序入门基础  视频教程(https://edu.csdn.net/course/detail/8456?pre_view=1) 第一章.认识小程序  1.工具的下载与安装  2.小程序代码构成 ...

  7. 深度学习“四大名著”发布!Python、TensorFlow、机器学习、深度学习四件套!

    Python 程序员深度学习的"四大名著": 这四本书着实很不错!我们都知道现在机器学习.深度学习的资料太多了,面对海量资源,往往陷入到"无从下手"的困惑出境. ...

  8. MySQL一招入门

    连接mysql数据库命令:mysql -u root -p 创建mysql数据库:create databaase xx库; 创建mysql表: create table db_xx表( id int ...

  9. autocomplete 之 ASP.NET

    <link href="CSS/jquery.autocomplete.css" rel="stylesheet" type="text/css ...

  10. Windows7 PowerShell 2.0升级到 PowerShell 5.1

    Windows7 sp1内置的PowerShell的版本是v2.0,现需要将其升级到v5.1,过程中有一个环节需要引起注意,为了以后查阅的方便,现将其记录下来. 1 查看PowerShell版本 Wi ...