Python 编程开发(01):Bash 命令行基本操作

Bash 是一种功能强大的 shell 语言(或命令行语言),广泛用于 Unix 和 Unix-like 操作系统,如 Linux 和 macOS。它提供了一个交互式界面,允许用户输入命令以执行各种操作,如文件管理、程序执行、网络配置等。Bash 的强大之处在于其灵活性和可定制性,以及它与各种其他工具和库的集成。

基本命令

打开终端。打开的终端可能会位于 ~ 文件夹,代表你的 home 目

录。如果你用的是 Linux,home 目录可能位于 /<home/your_computer_name>。如果你用的是 Mac,home 目录可能位于 /Users/<your_name>。想要查看你所在的文件夹,可以输入:

  • pwd:print working directory,打印工作目录,查看或确认所在文件夹。
  • ls [-l]:list,列出清单,查看(当前)文件夹中都有哪些文件。-l 标记给出了目录的详细内容,中包括所包含的文件和目录的数目,以及每一个文件和目录的权限、创建者的名字、组所有权、大小和最后修改日期。
  • cd 目录路径:change directory 改变目录。
  • cd ...:. 一个点表示当前你的工作目录,用... 跳转到上一级文件夹或目录,也可以连用两次,跳转到上两级目录,cd .../...。
  • Tab:在命令行中跳转目录或选择文件时,你应该可以用 Tab 键自动补全文件名和文件夹名。对于你想选择的文件或文件夹,先输入名字的第一个字母或前两个字母,然后只需按下 Tab 键。
  • 上/下键/history:如果你需要多次运行同一个命令,只需按向上键,在命令行历史中查找。如果你想查看最近所有的命令行历史,可以输入 history。

文件和目录操作

  • mkdir directory ...:make directory,可以创建多级目录,如 mkdir dir1/dir2/dir3 。
  • rmdir[rm -rf] directory:使用rmdir删除目录时,目录必须为空,即不能包含任何文件或子目录。rm -rf 目录名称,-r表示递归删除,-f表示强制删除,即使目录非空也会删除,谨慎使用。
  • touch 文件:touch 可以用来创建新文件,如果有这个文件的话,会改变最后一次修改的时间戳,但不会修改文件内容;如果文件不存在,会创建这个文件。再继续输入 ls,可以看到新文件。
  • cp 文件 目的路径 :将 文件 复制到 目的路径 中。如果我们想要在复制文件的同时改变文件名,可以输入:cp 文件 目的路径/新文件名称。
  • mv:move,可以用来移动文件和重命名文件,如 mv 文件 重命名新文件;mv 需要移动的文件全路径 移动的目的路径。
  • rm:remove,与用鼠标删除文件不同,用命令行删除文件是真正的删除。没有"回收站"可以恢复文件,所以使用 rm 时一定要小心,对你的计算机和代码一定要定期按时备份。

运行文件

  • python py文件:对于编程用到的大多数语言来说,只输入语言的名字(python、ruby、R)和文件名(并带有正确的文件路径或文件位置)就可以运行。

总结

这些都是 Bash 的一些基础命令,在学习 Python 的路上必不可少,我们通过将 Bash 的系统级操作与 Python 的数据处理和编程效率相结合,可以创建高效、可扩展和易于维护的自动化解决方案。在之后学习 Python 相信也一定会清楚,如果想了解更多,可以前往:https://ss64.com/bash/

相关推荐
lifallen1 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研1 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
wyiyiyi2 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8242 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员2 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋2 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cui__OaO3 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
鱼鱼说测试3 小时前
Jenkins+Python自动化持续集成详细教程
开发语言·servlet·php
AntBlack3 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt
艾莉丝努力练剑4 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法