day58:Linux:BashShell&linux文件管理&linux文件下载上传
目录
BashShell
1.什么是BeshShell?
命令的解释,用来翻译用户输入的指令
2.BashShell能做什么?
文件管理
软件管理
用户管理
权限管理
网络管理
3.如何使用BashShell?
在使用BashShell时,要分为单条命令和多条命令
单条命令
[root@oldboy-pythonedu ~]# useradd gdx
多条命令
for i in {1..100}
do
useradd gdx_$i
echo "gdx_$i is ok!!"
done
4.登录Linux Bash的提示符
[root@oldboy-pythonedu ~]#
root: 表示当前登录Bash Shell窗口的用户是root
oldboy-python: 当前系统的主机名称
~: 当前用户所处的路径 ~ 表示的是当前用户的家目录
#: 提示符 # 表示超级管理员
$ 表示普通用户
5.BashShell基础语法
ls # 命令 查看当前目录下的所有文件
ls -l # 命令 + 选项 选项 可以改变命令输出结尾呈现的方式
ls -l /tmp # 命令 + 选项 + 参数 具体看哪个路径下的所有文件,默认看当前目录.
6.BashShell特性
# 1.tab补全:
命令补全
路径补全 # 2.history: 执行的命令历史
-c: 清空
-d: 删除指定的一条记录
-w: 将历史记录落到指定的文件中 # 3.alias: 别名
'''临时操作'''
alias cat_network='cat /etc/sysconfig/network-scripts/ifcfg-ens32'
'''永久生效 ( 落到某个文件中 ) '''
[root@oldboy-pythonedu ~]# echo "alias cat_network='cat /etc/sysconfig/network-scripts/ifcfg-ens32'" >> /etc/bashrc # 4.unalias: 临时取消别名
[root@oldboy-pythonedu ~]# unalias cat_network # 5.快捷键:
ctrl+a: 命令行光标跳转到行首
ctrl+e: 命令行光标跳转到行尾
ctrl+l: 清屏, clear
ctrl+c: 中断bash窗口 前台正在运行的程序
ctrl+u: 删除光标之前的
ctrl+k: 删除光标之后的
ctrl+w: 按照单词删除
ctrl+ <--> 按照单词跳转光标
Linux文件管理
0.引入
我们可以对文件进行哪些操作呢?
创建 删除 压缩 移动 复制 编辑 查看 查找
1.目录结构
Windows目录结构:多根 C:\ D:\ E:\
Linux目录结构:单根 /
Linux下的目录结构
'''
bin: 普通用户可以执行的命令
sbin: 管理用户可以执行的命令
home: 普通用户的家目录: /home/USERNAME
root: 管理员用户的家目录
boot: 存放的启动系统时要加载的文件 grub引导菜单,内核文件
dev: 设备 ( 硬盘 光盘 终端 )
/dev/random: 产生随机数 (摇钱树)
/dev/null: 黑洞
etc: 配置 网卡配置,系统配置,服务配置
/etc/hostname: 主机名称
/etc/sysconfig/network-scripts/: #网卡的配置信息
lib
lib64
proc 实时反馈当前系统的状态. [ 汽车的仪表盘 ]
tmp 临时目录,谁上传只能谁删除 [ ]
usr
bin
sbin
local --> C:\Program Files
tmp ---> /var/tmp
var 可变的目录
log
pid: 存放服务进程的ID ---> python ---> 30119 --> /var/pid/python.pid ( 30119 )
'''
2.路径定位
通过路径对文件进行定位. 一个完整的路径,就包含了文件的路径.
3.文件管理命令
文件管理命令总览
'''
cd
pwd
ls -l,
mkdir -p
touch
cp -r
mv
rm -r -f
cat -n -A
head
tail -f
less
more
rz
sz
wget -O
echo
'''
文件管理命令详细介绍
1.在/home/下创建一个hello.py文件 touch
[root@oldboy-pythonedu ~]# touch /home/hello.py
2.查看创建的hello.py详情参数 ls
[root@oldboy-pythonedu ~]# ls -l /home/hello.py
3.复制 cp
将/home/hello.py 复制到 /tmp [ 最好能修改一下名称为 /tmp/test.py ]
cp:复制文件或者目录
-v:显示拷贝的效果
-r:递归拷贝
-i:如果文件覆盖,会有提示
[root@oldboy-pythonedu ~]# cp /home/hello.py /tmp/ #直接拷贝
[root@oldboy-pythonedu ~]# cp /home/hello.py /tmp/test.py #拷贝后修改名称
4.将/home/hello.py 文件删除 rm
rm:删除文件或者目录
-f:强制删除,不提示
-r:递归删除【删除目录】
[root@oldboy-pythonedu ~]# rm -f /home/hello.py
[root@oldboy-pythonedu ~]# rm -fr /tmp/etc
5.查看/tmp/test.py中的内容
查看有五个指令:cat head tail more less
cat:查看文件内容
-A:查看是否有特殊字符
-n:查看文件的行号
[root@oldboy-pythonedu ~]# cat /tmp/hello.py
head:查看文件内容:仅查看头部10行
[root@oldboy-pythonedu ~]# head /etc/passwd ''' 查看1行 '''
[root@oldboy-pythonedu ~]# head -1 /etc/passwd
tail:查看文件内容:仅查看尾部10行
-f: 实时追踪文件尾部的变化
[root@oldboy-pythonedu ~]# tail -f /var/log/messages
less/more:分页查看
[root@oldboy-pythonedu ~]# less /etc/services
[root@oldboy-pythonedu ~]# more /etc/services
6.创建目录 mkdir
mkdir:创建目录
-p:递归创建
-v:显示创建的过程
[root@oldboy-pythonedu ~]# mkdir /opt/python_dir
[root@oldboy-pythonedu ~]# mkdir -pv /opt/dir1/dir2/dir3/dir4
7.移动 mv
将/tmp/hello.py 移动到/opt目录下
mv:移动文件或目录
[root@oldboy-pythonedu ~]# mv /tmp/hello.py /opt/
8.查找命令的全路径 which
which:查找一个命令的绝对路径
[root@oldboy-pythonedu ~]# which cat
'''/usr/bin/cat'''
[root@oldboy-pythonedu ~]# which head
'''/usr/bin/head'''
whereis:也可以查找路径
[root@oldboy-pythonedu ~]# whereis -b head
'''head: /usr/bin/head'''
Linux文件下载和上传
下载:
1.从互联网下载资源到服务器
2.从服务器下载资源到本地
上传:
从本地上传内容到服务器
rz:从本地电脑上传文件到server( 只能上传文件,不能上传目录或文件夹,最大限制4G )
sz:从server下载文件到本地电脑
想要完成linux的上传和下载,必须先下载一个模块
[root@oldboy-pythonedu ~]# yum install lrzsz -y
wget:获取互联网上的资源至本地
想使用这个功能,也需要先下载一个模块
[root@oldboy-pythonedu ~]# yum install wget -y
获取互联网上的资源至本地
[root@oldboy-pythonedu ~]# wget http://nginx.org/download/nginx-1.16.1.tar.gz
[root@oldboy-pythonedu ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
day58:Linux:BashShell&linux文件管理&linux文件下载上传的更多相关文章
- Linux 终端訪问 FTP 及 上传下载 文件
今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...
- Linux 本地文件或文件夹上传服务器
Linux 本地文件或文件夹上传服务器 一.权限设置 本地文件或文件夹上传服务器,你首先需要获取到root权限: 二.上传方式 上传方式有两种 : 1.通过 FTP 客户端上传文件或文件夹: 2.通过 ...
- linux使用rz、sz快速上传、下载文件
平时都使用ftp工具进行文件的上传下载操作,针对于小文件的简单传输来说,有下面好的方法: 首先安装rz.sz工具: #yum install lrzsz 上传文件:rz 下载文件:sz 上传文件在sh ...
- Linux 下 maven 的下载、上传与安装
要运行maven,必须要有 JDK ,maven 是由 Java 语言编写的 一.JDK 的安装 ORACLE 官网下载JDK jdk-8u231-linux-x64.tar.gz 上传 JDK 至 ...
- 你知道哪些linux命令,能把文件上传到远程linux服务器
多数情况下 企业的服务基本都是部署在linux服务器 那对于测试同学,必须掌握基本的linux命令 至少要知道怎么部署整体环境 部署过程中,经常需要的操作,是向服务器上传部署包 你一般都是 ...
- Linux服务器通过rz/sz轻松上传下载文件
Linux服务器通过命令行远程访问时,上传文件还需要ftp所以不太方便,可以使用rz这个小工具来上传不太大的文件,方法如下: 输入rz,如果提示命令不存在,证明还没有安装,以CentOS为例,安装命令 ...
- 每天一个linux命令(26)--用SecureCRT来上传和下载文件
用SSH管理Linux 服务器时经常需要远程与本地之间交互文件,而直接使用 SecureCRT 自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII.Xmodem.Zmod ...
- Linux系统简单易用的上传下载命令rz和sz
一)安装方法汇总 1.安装方法(推荐) yum install lrzsz -y 2.在安装Linux系统时选中"DialupNetworking Support"组包 3.安装系 ...
- 如何在Linux服务器和windows系统之间上传与下载文件
Do not let dream just be your dream. 背景:Linux服务器文件上传下载. XShell+Xftp安装包(解压即用)百度网盘链接:https://pan.baidu ...
随机推荐
- Java树形结构中根据父类节点查找全部子类节点
上一篇文章介绍了两种树形结构数据整合json格式的方法,第一种方法中有根据父类获取全部子类的方法,这里单独拿出来再说一下. 仍然是利用递归来整合,代码如下: //根据父节点获取全部子节点 public ...
- Java数据结构——双端队列
双端队列(Deque)双端队列是指允许两端都可以进行入队和出队操作的队列,其元素的逻辑结构仍是线性结构.将队列的两端分别称为前端和后端,两端都可以入队和出队.Deque继承自Queue接口,Deque ...
- Bellman-Ford算法 例题:P3371 单源最短路径
看到还没人用Bellman-Ford过,赶紧水一发 lz非常弱,求各位大佬轻喷qwq 洛谷题目传送门:P3371 0."松弛"操作 如果存在一条边\((u,v)\)通过中继的方式可 ...
- CSS布局中浮动问题的四种解决方案
一.起因: 子盒子设置浮动之后效果: 由此可见,蓝色的盒子设置浮动之后,因为脱离了标准文档流,它撑不起父盒子的高度,导致父盒子高度塌陷.如果网页中出现了这种问题,会导致我们整个网页的布局紊乱 二.解决 ...
- 模型层中QuerySet的学习
创建对象 使用关键字参数实例化模型实例来创建一个对象,然后调用save()把它保存到数据库中 pub_obj = models.Publisher(title='奥利给出版社') pub_obj.sa ...
- WPF新手快速入门系列 2.绑定
[概要] 上一章讲了布局,按照市面上的书籍每一本讲的顺序都不一样,本系列是希望大家能快速上手去应对工作需要,所以本章就直接开始讲绑定. 如有学习过程中想交流学习.疑惑解答可以来此QQ群交流:58074 ...
- C++入门记-构造函数和析构函数
前文回顾 本文档环境基于Vscode + GCC + CodeRunner 关于C++的环境搭建请参考下面链接: C++入门记-大纲 由于本人具有C#开发经验,部分相同的知识就不再赘述了.只列一下需要 ...
- 总结java创建文件夹的4种方法及其优缺点-JAVA IO基础总结第三篇
本文是Java IO总结系列篇的第3篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...
- [ASP.NET Core开发实战]基础篇06 配置
配置,是应用程序很重要的组成部分,常常用于提供信息,像第三方应用登录钥匙.上传格式与大小限制等等. ASP.NET Core提供一系列配置提供程序读取配置文件或配置项信息. ASP.NET Core项 ...
- 你可能不了解的java枚举
枚举在java里也算个老生长谈的内容了,每当遇到一组需要类举的数据时我们都会自然而然地使用枚举类型: public enum Color { RED, GREEN, BLUE, YELLOW; pub ...