Linux基础1


系统环境:mac登陆远程虚拟linux环境

远程登录

终端输入地址、密码

ssh datawhale@139.198.15.157

文件与目录管理

目录结构

  • 命令
ls /
  • 结果
    在这里插入图片描述
  • 说明
文件夹存储内容
bin最常使用命令
boot核心文件(链接文件+镜像)
dev外部设备
etc系统管理所需配置文件和子目录
home用户主目录
dev外部设备
lib动态链接共享库
boot核心文件(链接文件+镜像)
mediaU盘、光驱等设备
mnt临时挂载文件
opt额外软件目录
boot核心文件(链接文件+镜像)
proc虚拟文件系统
root管理员主目录
sbin管理员管理程序
selinux防火墙
srv服务启动后需提取数据
sys文件系统(proc+devfs+devpts)
tmp临时文件存放
usr用户程序及文件
var经常被更新的文件(日志等)
run临时文件,重启后会被删除
lost+found异常关机后存放文件

常用命令

  • 文件操作命令
基本命令全拼用途示例描述
lslist files列出目录及文件名ls -a查看所有文件(包括.开头隐藏文件)
ls -d仅显示目录本身
ls -l显示详情,包括属性、权限、修改日期等
cdchange directory切换目录cd ~回到根目录
cd ..返回上级目录
pwdprint work directory显示当前目录pwd显示当前目录
pwd -P显示完整非链接路径
mkdirmake directory创建目录mkdir t1创建t1文件夹
mkdir -m 711 t1创建t1文件夹,并配置属性,711为属性代码
mkdir -p t1/t2/t3逐层创建t1、t2、t3文件夹
rmdirremove directory删除空目录rmdir t1删除空文件夹t1,非空会报错
rmdir -p t1/t2/t3逐层删除空文件夹t1、t2、t3
rmremove删除文件或目录rm -f t1强制删除文件t1,没有报错或询问
rm -i t1互动删除文件(夹),询问是否确定删除
rm -r t1递归删除文件夹t1下所有文件
cpcopy复制文件或目录cp -a source destination复制所有文件、属性、链接等
cp -d source destination快捷方式
cp -f source destination强制覆盖
cp -i source destination会提示相同文件已存在是否覆盖
cp -l source destination只生成链接
cp -p source destination复制文件及其属性
cp -r source destination复制整个文件夹
cp -u source destination用于文件更新
mvmove file移动文件或目录,重命名mv -f source destination强制移动,没有报错或询问
rm -i source destination互动移动,询问已存在
rm -u source destination更新
lnlink建立文件之间的连接关系ln f1 f2建立文件f2,与f1硬连接(同节点号,但文件实体不同)
ln -s f1 f2建立文件f2,与f1软连接(同一文件但节点号不同)
wgetwebsite get指定网站下载文件wget url下载文件(最后一个/后为完整文件名)
wget --spider url测试文件是否存在、可下载
wget -c url断点续传
wget -b url后台下载,可用“tail -f wget-log”命令查看进度
wget -O test.txt url将文件存为test.txt

注:wget详细参数参考此链接

  • 文件查看命令
基本命令用途示例描述
man查看命令帮助手册man ls查看ls命令帮助手册
cat从第一行开始显示文件内容cat t1查看t1文件内容
tac从最后一行开始显示文件内容tac t1从最后一行开始查看t1文件内容
nl显示行号nl t1查看t1文件,带行号
head显示前n行head -n 5 t1查看t1文件前5行
tail显示后n行tail -n 5 t1查看t1文件后5行
more一页一页向后查看文件more t1查看t1文件
less向前/向后查看文件less t1查看t1文件

注:
more后续操作如下:

  1. 空格:向后一页
  2. 回车:向后一行
  3. /字符串:向后查找字符串
  4. :f:显示文档名及总行数
  5. q:退出
  6. b:往回翻页

less后续操作如下:

  1. 空格:向后一页
  2. [pagedown]:向下翻动一页
  3. [pageup] :向上翻动一页
  4. /字符串:向后查找字符串
  5. ?字符串:向前查找字符串
  6. n:重复前一个搜索
  7. N:反向重复前一个搜索
  8. q:退出

Tasks

创建文件夹、删除文件夹

  • 任务
    • 在指定目录下,新建一个文件夹A,在文件夹A内部创建一个以文件夹B
    • 在B文件夹内创建一个空txt文件
    • 删除txt文件
    • 删除文件夹B,然后删除文件夹A
  • 代码
[没有名字!@i-ym8u2kyp ~]$ cd /home/datawhale
[没有名字!@i-ym8u2kyp ~]$ mkdir ling
[没有名字!@i-ym8u2kyp ~]$ ls
anaconda3  geyashi  John     Lucs     Recal    Yuh         zzx
Ben        home     joychou  Lxt      richard  yui
czy        jane     ling     Maxwell  ss       zhaiyichen
datawhale  jense    liuy     naruto   Tianjia  zzw
[没有名字!@i-ym8u2kyp ~]$ mkdir ling/datawhale
[没有名字!@i-ym8u2kyp ~]$ ls ling
datawhale
[没有名字!@i-ym8u2kyp ~]$ cd ling/datawhale
[没有名字!@i-ym8u2kyp datawhale]$ touch test.txt
[没有名字!@i-ym8u2kyp datawhale]$ ls
test.txt
[没有名字!@i-ym8u2kyp datawhale]$ rm test.txt
[没有名字!@i-ym8u2kyp datawhale]$ cd ..
[没有名字!@i-ym8u2kyp ling]$ rmdir datawhale
[没有名字!@i-ym8u2kyp ling]$ cd ..
[没有名字!@i-ym8u2kyp ~]$ rmdir ling
[没有名字!@i-ym8u2kyp ~]$ ls
anaconda3  datawhale  jane   joychou  Lxt      Recal    Tianjia  zhaiyichen
Ben        geyashi    jense  liuy     Maxwell  richard  Yuh      zzw
czy        home       John   Lucs     naruto   ss       yui      zzx

下载文件、阅读文件

  • 任务
    • 指定目录下,新建一个文件夹A,在文件夹A内部创建一个文件夹B
    • 使用wget命令下载https://mirror.coggle.club/dataset/affairs.txt,到文件夹B
    • 使用head、cat、tail命令阅读下载的文件
    • 在命令行使用ipython进入python3环境,并使用pandas读取下载的文件
  • 代码
[没有名字!@i-ym8u2kyp ~]$ mkdir -p ling/datawhale
[没有名字!@i-ym8u2kyp ~]$ cd ling/datawhale
[没有名字!@i-ym8u2kyp ~]$ wget --spider https://mirror.coggle.club/dataset/affairs.txt
开启 Spider 模式。检查是否存在远程文件。
--2021-12-13 22:13:31--  https://mirror.coggle.club/dataset/affairs.txt
正在解析主机 mirror.coggle.club (mirror.coggle.club)... 139.215.234.228, 2408:872b:f01:1002:3::3fc
正在连接 mirror.coggle.club (mirror.coggle.club)|139.215.234.228|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:92161 (90K) [text/plain]
存在远程文件。

[没有名字!@i-ym8u2kyp datawhale]$ wget https://mirror.coggle.club/dataset/affairs.txt
--2021-12-13 22:14:40--  https://mirror.coggle.club/dataset/affairs.txt
正在解析主机 mirror.coggle.club (mirror.coggle.club)... 139.215.234.228, 2408:872b:f01:1002:3::3fc
正在连接 mirror.coggle.club (mirror.coggle.club)|139.215.234.228|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:92161 (90K) [text/plain]
正在保存至: “affairs.txt”

100%[======================================>] 92,161      --.-K/s 用时 0.06s   

2021-12-13 22:14:41 (1.55 MB/s) - 已保存 “affairs.txt” [92161/92161])

[没有名字!@i-ym8u2kyp datawhale]$ head -n 10 affairs.txt
[没有名字!@i-ym8u2kyp datawhale]$ tail -n 10 affairs.txt
[没有名字!@i-ym8u2kyp datawhale]$ cat affairs.txt
[没有名字!@i-ym8u2kyp datawhale]$ more affairs.txt

在目录下使用vi或vim编辑文件

  • 任务
    • 分别使用Nano和Vim创建py文件,并输入并运行
#!/usr/bin/env python3
print('Hello World!')
  • Nano代码
    • 建立nanotest.py文件
    • 输入内容
    • 按界面提示保存退出
[没有名字!@i-ym8u2kyp ling]$ nano nanotest.py
[没有名字!@i-ym8u2kyp ling]$ cat nanotest.py
#!/usr/bin/env python3
print('Hello World!')
[没有名字!@i-ym8u2kyp ling]$ python3 nanotest.py
Hello World!
  • Vim代码
    • 建立vimtest.py文件
    • 按下i进入输入模式
    • 输入内容
    • esc退出输入模式
    • :wq保存
[没有名字!@i-ym8u2kyp ~]$ cd ling
[没有名字!@i-ym8u2kyp ling]$ vim vimtest.py
[没有名字!@i-ym8u2kyp ling]$ cat vimtest.py
#!/usr/bin/env python3
print('Hello World!')
[没有名字!@i-ym8u2kyp ling]$ python3 vimtest.py
Hello World!

参考

Datawhale Linux组队学习

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值