Bash&Shell的学习笔记~

1. Bash跟shell的关系

Shell是一个供用户操作的Linux程序,(这里我们其实使用的是Ubuntu系统),同时它也是一种程序设计语言,可以用来编写代码来完成更加复杂的操作过程;

2. 基础知识

2.1 注释:# Add one-line comments

2.2 变量:$var

Bash中使用美元符号$来定义变量;
例如:[示例来自《菜鸟教程》]
​​在这里插入图片描述

2.3 逻辑运算符

&&:用来条件执行两个语句,A && B,如果A执行成功,则执行B指令;

2.4 文件路径

Commanddescription
~home目录
$(dirname "$0")获取当前脚本所在目录

2.5 多行接续符:space + \

2.6 命令输入

不保存当前bash命令——“命令前加空格”

在当前命令前面“+空格”

 echo this_command_is_saved

具体原理请参考博文《Ubuntu bash不记录history方法》

清空历史bash命令

# 第一步: 删除 .bash_history 文件
rm -rf ~/.bash_history
# 第二步: 清空命令历史记录
history -c

3. 常见命令

sudo apt update:更新包摘要信息

sudo apt update可以更新包管理器中的各个包的摘要信息,从而可以知道哪些包可以进行更新;
关于 apt update 和 apt upgrade 命令的区别,请参考博文《apt的update和upgrade命令的区别是什么?》

4. 文本编辑

5.1 常见命令

cat: concatenate

显示文件内容:cat file_name

5.2 删除最后一行文字

sed -i '$ d' file_txt

Note
“sed”的全称是"Stream Editor",是一种在Linux和Unix系统中广泛使用的文本编辑器工具。它可以读取、编辑和转换文本文件,支持使用正则表达式匹配和替换文本,可以实现诸如添加、删除、替换和排序等操作。

5. 文件管理

6.1 常用命令

touch:新建文件

ll:显示当前文件夹所有文件的详细信息

ll是命令ls -l的别名,(跟Windows下文件夹“详细信息”的文件视图很像);

tree:状图形式显示目录结构

tree [目录名] [选项]

6.2 常见命令用例

unzip val2017.zip:解压zip压缩包

此命令会将val2017.zip的内容解压到当前目录的val2017文件夹中。

rm -rf file1 file2 ... filen:递归删除文件或目录

这个命令的作用是删除文件、或者文件夹以及包含的所有子文件或子文件夹。

6. 环境变量

printenv:输出环境变量

printenv可以用来显示环境变量的值;

export:设置仅在当前终端窗口生效的变量

示例:

export CUDA_VISIBLE_DEVICES=-1

设置环境变量 CUDA_VISIBLE_DEVICES值为-1;

7. 使用Python执行bash指令

可以使用Python来执行bash指令,也就是os.system(command)函数;

8. SSH连接

断开连接

exit
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值