加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

day58:Linux:BashShell&linux文件管理&linux文件下载上

发布时间:2020-12-20 09:58:35 所属栏目:Python 来源:网络整理
导读:目录 1.BashShell 2.Linux文件管理 3.Linux文件下载和上传 4.Linux相关练习题 BashShell 1.什么是BeshShell? 命令的解释,用来 翻译用户输入的指令 2.BashShell能做什么? 文件管理 软件管理 用户管理 权限管理 网络管理 3.如何使用BashShell? 在使用BashShel

目录

1.BashShell

2.Linux文件管理

3.Linux文件下载和上传

4.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 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

Linux相关练习题

 4.如何快速从当前目录切换到家目录?
    cd
    cd ~
    cd /root                 root用户
    cd /home/USERNAME           普通用户
    

 5.如何快速返回上一次所在的目录?
    cd -

 6.在家目录下创建一个名为oldboy的目录,然后进入该目录
    cd
    mkdir oldboy
    cd oldboy/

 7.在oldboy目录下进入根目录下的etc目录下的yum.repos.d目录
    cd /etc/yum.repos.d/

 8.在当前所在的yum.repos.d目录快速返回到当前目录的上级目录(根目录下的etc目录)
    cd ..        上级目录
    cd .        当前目录

 9.在oldboy下创建一个名为student.txt的文件
[root@oldboy-pythonedu yum.repos.d] cd ~/oldboy/
[root@oldboy-pythonedu oldboy] pwd
/root/oldboy
[root@oldboy-pythonedu oldboy] touch student.txt

 10.在家目录下创建oldboy目录下名为oldboyedu的目录,然后将先前创建的名为student.txt的文件复制到家目录下
[root@oldboy-pythonedu oldboy] mkdir oldboyedu
[root@oldboy-pythonedu oldboy] ls
oldboyedu
[root@oldboy-pythonedu oldboy] touch student.txt
[root@oldboy-pythonedu oldboy] cp student.txt ~
[root@oldboy-pythonedu oldboy] ls /root/
student.txt


 11.在家目录下创建一个名为job的目录,并将先前创建的名为oldboy目录及目录下的文件一次性复制到job目录下
[root@oldboy-pythonedu oldboy] cd ..
[root@oldboy-pythonedu ~] mkdir job
[root@oldboy-pythonedu ~] cp -r oldboy/ job/


 12.将根目录etc下的resolv.conf和hosts文件一次性复制到job目录下
[root@oldboy-pythonedu ~] cp /etc/resolv.conf  /etc/hosts  ~/job/


 13.返回到家目录,删除家目录下oldboy目录及该目录下的所有文件
[root@oldboy-pythonedu ~] rm -rf ./oldboy/

 14.查看根目录下etc下passwd文件所有内容
    cat /etc/passwd

 15.分页查看passwd的所有内容
    less /etc/passwd
    more /etc/passwd


 16.只查看passwd文件头部5行内容
    head -5 /etc/ 17.只查看passwd文件尾部5行内容
    tail -5 /etc/ 18.在根目录“/”下用ls查看根目录下的所有目录,并解释每个目录对应的作用

/boot                 启动时需要加载的grub菜单,内核文件
/etc                 配置文件的目录
/usr/                 C:Program Files
    /usr/local    
    /usr/bin         普通用户执行的命令
    /usr/sbin         管理管理员执行的命令
/bin                 链接关系
/sbin                #
/tmp                 临时目录  任何用户都可以写
/var                 日志目录  会随着时间的推移发生变化
/root                 超级管理员root的家目录
/home                 普通用户的家目录   /home/USERNAME
/proc                 实时反馈当前系统的状态,命令获取状态.


 20.如何检查当前系统登录终端,以及登录的是什么用户
    tty
    
[root@oldboy-pythonedu ~] whoami 
root

[root@oldboy-pythonedu ~] cat /tmp/test.sh 
Login=$(whoami)
if [ $Login != root ];then
    echo 请使用root执行脚本
    exit
fi
    echo 欢迎使用超级管理员权限"

 23.列出至少10个你学会的linux基础命令

    mkdir
    touch
    cp
    mv
    cat
    cd
    pwd
    rm
    ls
    vi
    head
    tail
    lessmore
    
    

 24.使用创建文件的命令一次性批量创建(oldboy1,oldboy2,oldboy3,oldboy4,oldboy5)这几个文件
    mkdir -v oldboy{7..10}


 26.解释linux系统下“绝对路径”和“相对路径”的区别
    绝对:  必须从/开始的
    相对:   相对于当前

 27.在windows电脑桌面新建一个名为1.txt的文件,并想办法上传到linux系统的家目录
    rz

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读